Merge "Initializing the Telephony Sms DB based on RoleManager.ROLE_SMS" into qt-dev

am: d1ca4823d5

Change-Id: I1ecd43dbf9c84f10dd92a0aa2b06efd0bfaa823c
This commit is contained in:
Ritwika Mitra
2019-06-03 12:36:56 -07:00
committed by android-build-merger

View File

@@ -465,7 +465,11 @@ public final class SmsApplication {
int userId) {
TelephonyManager tm = (TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
if (!tm.isSmsCapable()) {
RoleManager roleManager = (RoleManager) context.getSystemService(Context.ROLE_SERVICE);
// (b/134400042) RoleManager might be null in unit tests running older mockito versions
// that do not support mocking final classes.
if (!tm.isSmsCapable() && (roleManager == null || !roleManager.isRoleAvailable(
RoleManager.ROLE_SMS))) {
// No phone, no SMS
return null;
}
@@ -584,7 +588,11 @@ public final class SmsApplication {
public static void setDefaultApplicationAsUser(String packageName, Context context,
int userId) {
TelephonyManager tm = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
if (!tm.isSmsCapable()) {
RoleManager roleManager = (RoleManager) context.getSystemService(Context.ROLE_SERVICE);
// (b/134400042) RoleManager might be null in unit tests running older mockito versions
// that do not support mocking final classes.
if (!tm.isSmsCapable() && (roleManager == null || !roleManager.isRoleAvailable(
RoleManager.ROLE_SMS))) {
// No phone, no SMS
return;
}