Disable managed services special access screens...

... on low ram devices.

- Remove them from the 'Special app access' screen
- Display an error message if an app intents directly to
them

Bug: 35219985
Test: visual, and runtest --path ManagedAccessSettingsLowRamTest.java,
when the device is in low ram mode and when it's not.
Change-Id: Ied919cb248ae56683a00e3492c4737dfd00449ac
This commit is contained in:
Julia Reynolds
2017-06-21 14:19:46 -04:00
parent 49b5de942e
commit 559bd3651e
10 changed files with 178 additions and 17 deletions

View File

@@ -92,19 +92,25 @@ public class ZenAccessSettings extends EmptyTextSettings {
@Override
public void onResume() {
super.onResume();
reloadList();
getContentResolver().registerContentObserver(
Secure.getUriFor(Secure.ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES), false,
mObserver);
getContentResolver().registerContentObserver(
Secure.getUriFor(Secure.ENABLED_NOTIFICATION_LISTENERS), false,
mObserver);
if (!ActivityManager.isLowRamDeviceStatic()) {
reloadList();
getContentResolver().registerContentObserver(
Secure.getUriFor(Secure.ENABLED_NOTIFICATION_POLICY_ACCESS_PACKAGES), false,
mObserver);
getContentResolver().registerContentObserver(
Secure.getUriFor(Secure.ENABLED_NOTIFICATION_LISTENERS), false,
mObserver);
} else {
setEmptyText(R.string.disabled_low_ram_device);
}
}
@Override
public void onPause() {
super.onPause();
getContentResolver().unregisterContentObserver(mObserver);
if (!ActivityManager.isLowRamDeviceStatic()) {
getContentResolver().unregisterContentObserver(mObserver);
}
}
private void reloadList() {