From ca90cd36151f541458c2dce55600456622694349 Mon Sep 17 00:00:00 2001 From: Julia Reynolds Date: Fri, 31 Jul 2020 13:15:35 -0400 Subject: [PATCH] Allow DND screens on low ram devices Low RAM devices are allowed to use NLSs and CPSs in Android 11. Test: this, ConditionProviderVerifierActivity (cts) Bug: 161471776 Change-Id: Ic97f68dd3721ff50f31d81f0afa9f9a1c2c08e86 --- .../zenaccess/ZenAccessController.java | 9 +-------- .../zenaccess/ZenAccessDetails.java | 3 --- .../ZenAccessSettingObserverMixin.java | 6 ------ .../zenaccess/ZenAccessControllerTest.java | 6 ------ .../ZenAccessSettingObserverMixinTest.java | 20 +------------------ 5 files changed, 2 insertions(+), 42 deletions(-) diff --git a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessController.java b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessController.java index 727870c6d60..e6b389a5b3c 100644 --- a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessController.java +++ b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessController.java @@ -40,20 +40,13 @@ public class ZenAccessController extends BasePreferenceController { private static final String TAG = "ZenAccessController"; - private final ActivityManager mActivityManager; - public ZenAccessController(Context context, String preferenceKey) { super(context, preferenceKey); - mActivityManager = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE); } @Override public int getAvailabilityStatus() { - return isSupported(mActivityManager) ? AVAILABLE : UNSUPPORTED_ON_DEVICE; - } - - public static boolean isSupported(ActivityManager activityManager) { - return !activityManager.isLowRamDevice(); + return AVAILABLE; } public static Set getPackagesRequestingNotificationPolicyAccess() { diff --git a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessDetails.java b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessDetails.java index a18e7d63cad..ba6bb1dfc83 100644 --- a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessDetails.java +++ b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessDetails.java @@ -50,9 +50,6 @@ public class ZenAccessDetails extends AppInfoWithHeader implements @Override protected boolean refreshUi() { final Context context = getContext(); - if (!ZenAccessController.isSupported(context.getSystemService(ActivityManager.class))) { - return false; - } // If this app didn't declare this permission in their manifest, don't bother showing UI. final Set needAccessApps = ZenAccessController.getPackagesRequestingNotificationPolicyAccess(); diff --git a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixin.java b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixin.java index 30507efffa9..da238f62496 100644 --- a/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixin.java +++ b/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixin.java @@ -53,9 +53,6 @@ public class ZenAccessSettingObserverMixin extends ContentObserver implements Li @Override public void onStart() { - if (!ZenAccessController.isSupported(mContext.getSystemService(ActivityManager.class))) { - return; - } mContext.getContentResolver().registerContentObserver( Settings.Secure.getUriFor( Settings.Secure.ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES), @@ -69,9 +66,6 @@ public class ZenAccessSettingObserverMixin extends ContentObserver implements Li @Override public void onStop() { - if (!ZenAccessController.isSupported(mContext.getSystemService(ActivityManager.class))) { - return; - } mContext.getContentResolver().unregisterContentObserver(this /* observer */); } } diff --git a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java index 6041e9dead1..8febbc68bae 100644 --- a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java +++ b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessControllerTest.java @@ -62,12 +62,6 @@ public class ZenAccessControllerTest { assertThat(mController.isAvailable()).isTrue(); } - @Test - public void isAvailable_lowMemory_false() { - mActivityManager.setIsLowRamDevice(true); - assertThat(mController.isAvailable()).isFalse(); - } - @Test public void logSpecialPermissionChange() { ZenAccessController.logSpecialPermissionChange(true, "app", mContext); diff --git a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixinTest.java b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixinTest.java index cba1a5199ed..fb565b62e9e 100644 --- a/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixinTest.java +++ b/tests/robotests/src/com/android/settings/applications/specialaccess/zenaccess/ZenAccessSettingObserverMixinTest.java @@ -65,27 +65,13 @@ public class ZenAccessSettingObserverMixinTest { } @Test - public void onStart_lowMemory_shouldNotRegisterListener() { + public void onStart_shouldRegisterListener() { final ShadowActivityManager sam = Shadow.extract( mContext.getSystemService(ActivityManager.class)); sam.setIsLowRamDevice(true); mLifecycle.handleLifecycleEvent(ON_START); - mContext.getContentResolver().notifyChange(Settings.Secure.getUriFor( - Settings.Secure.ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES), null); - - verify(mListener, never()).onZenAccessPolicyChanged(); - } - - @Test - public void onStart_highMemory_shouldRegisterListener() { - final ShadowActivityManager sam = Shadow.extract( - mContext.getSystemService(ActivityManager.class)); - sam.setIsLowRamDevice(false); - - mLifecycle.handleLifecycleEvent(ON_START); - mContext.getContentResolver().notifyChange(Settings.Secure.getUriFor( Settings.Secure.ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES), null); @@ -94,10 +80,6 @@ public class ZenAccessSettingObserverMixinTest { @Test public void onStop_shouldUnregisterListener() { - final ShadowActivityManager sam = Shadow.extract( - mContext.getSystemService(ActivityManager.class)); - sam.setIsLowRamDevice(false); - mLifecycle.handleLifecycleEvent(ON_START); mLifecycle.handleLifecycleEvent(ON_STOP);