diff options
Diffstat (limited to 'java/com/android/dialer/blocking')
3 files changed, 16 insertions, 10 deletions
diff --git a/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java b/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java index 3cc42207d..6e9fe1315 100644 --- a/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java +++ b/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java @@ -21,6 +21,7 @@ import android.content.SharedPreferences; import android.preference.PreferenceManager; import android.support.annotation.NonNull; import android.support.annotation.Nullable; +import android.support.v4.os.UserManagerCompat; import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler.OnHasBlockedNumbersListener; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; @@ -100,6 +101,10 @@ public class BlockedNumbersAutoMigrator { @Nullable @Override public Boolean doInBackground(@Nullable Void input) { + if (!UserManagerCompat.isUserUnlocked(appContext)) { + LogUtil.i("BlockedNumbersAutoMigrator", "not attempting auto-migrate: device is locked"); + return false; + } SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(appContext); diff --git a/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java b/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java index 12a2086d4..fa74850ba 100644 --- a/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java +++ b/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java @@ -137,14 +137,6 @@ public class FilteredNumberAsyncQueryHandler extends AsyncQueryHandler { return; } - String e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); - String formattedNumber = FilteredNumbersUtil.getBlockableNumber(context, e164Number, number); - if (TextUtils.isEmpty(formattedNumber)) { - listener.onCheckComplete(INVALID_ID); - blockedNumberCache.put(number, INVALID_ID); - return; - } - if (!UserManagerCompat.isUserUnlocked(context)) { LogUtil.i( "FilteredNumberAsyncQueryHandler.isBlockedNumber", @@ -153,6 +145,14 @@ public class FilteredNumberAsyncQueryHandler extends AsyncQueryHandler { return; } + String e164Number = PhoneNumberUtils.formatNumberToE164(number, countryIso); + String formattedNumber = FilteredNumbersUtil.getBlockableNumber(context, e164Number, number); + if (TextUtils.isEmpty(formattedNumber)) { + listener.onCheckComplete(INVALID_ID); + blockedNumberCache.put(number, INVALID_ID); + return; + } + startQuery( NO_TOKEN, new Listener() { diff --git a/java/com/android/dialer/blocking/FilteredNumbersUtil.java b/java/com/android/dialer/blocking/FilteredNumbersUtil.java index a95e8d789..3c001a2c2 100644 --- a/java/com/android/dialer/blocking/FilteredNumbersUtil.java +++ b/java/com/android/dialer/blocking/FilteredNumbersUtil.java @@ -37,6 +37,7 @@ import com.android.dialer.logging.InteractionEvent; import com.android.dialer.logging.Logger; import com.android.dialer.notification.NotificationChannelManager; import com.android.dialer.notification.NotificationChannelManager.Channel; +import com.android.dialer.util.DialerUtils; import com.android.dialer.util.PermissionsUtil; /** Utility to help with tasks related to filtered numbers. */ @@ -72,7 +73,7 @@ public class FilteredNumbersUtil { new AsyncTask<Object, Void, Boolean>() { @Override public Boolean doInBackground(Object... params) { - if (context == null || !PermissionsUtil.hasContactsPermissions(context)) { + if (context == null || !PermissionsUtil.hasContactsReadPermissions(context)) { return false; } @@ -186,7 +187,7 @@ public class FilteredNumbersUtil { } public static long getLastEmergencyCallTimeMillis(Context context) { - return PreferenceManager.getDefaultSharedPreferences(context) + return DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context) .getLong(LAST_EMERGENCY_CALL_MS_PREF_KEY, 0); } |