diff options
author | jackqdyulei <jackqdyulei@google.com> | 2017-03-15 15:13:10 -0700 |
---|---|---|
committer | jackqdyulei <jackqdyulei@google.com> | 2017-03-28 17:05:19 -0700 |
commit | 82d07983b46b4c6a1b7a3c431c57ff45e84e72be (patch) | |
tree | 164844518b8c14a17e11c18bb06d984869af6117 /src/com/android/settings/enterprise | |
parent | ddba96670048a07b98e5c1e0d9f3d9bd4ebe9b38 (diff) | |
download | packages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.tar.gz packages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.tar.bz2 packages_apps_Settings-82d07983b46b4c6a1b7a3c431c57ff45e84e72be.zip |
Create Controller for app buttons
These two buttons(uninstall + forcestop) are used in both battery page
and app page, we should move the logic for these two buttons into one
place.
This cl creates the AppButtonsPreferenceController for the above
purpose. This cl only copies the logic to controller but hasn't make
InstalledAppDetails use this controller.
Since DialogFragment could not use function in controller directly,
the controller expose DialogListener and all the fragments must
implement this interface. Then they can delegate the method call
to controller directly.
The following cl will:
1. Make the InstalledAppDetails be compatible to controller
2. Make the InstalledAppDetails use this controller.
Bug: 35810915
Test: RunSettingsRoboTests
Change-Id: Ie2aa8064bcec3003233896c18be772825b12930a
Diffstat (limited to 'src/com/android/settings/enterprise')
-rw-r--r-- | src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java | 21 | ||||
-rw-r--r-- | src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java | 15 |
2 files changed, 36 insertions, 0 deletions
diff --git a/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java b/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java index e988fdadf1..a154a2fb93 100644 --- a/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java +++ b/src/com/android/settings/enterprise/DevicePolicyManagerWrapper.java @@ -129,4 +129,25 @@ public interface DevicePolicyManagerWrapper { * @see android.app.admin.DevicePolicyManager#getOwnerInstalledCaCerts */ List<String> getOwnerInstalledCaCerts(@NonNull UserHandle user); + + /** + * Calls {@code DevicePolicyManager.isDeviceOwnerAppOnAnyUser()}. + * + * @see android.app.admin.DevicePolicyManager#isDeviceOwnerAppOnAnyUser + */ + boolean isDeviceOwnerAppOnAnyUser(String packageName); + + /** + * Calls {@code DevicePolicyManager.packageHasActiveAdmins()}. + * + * @see android.app.admin.DevicePolicyManager#packageHasActiveAdmins + */ + boolean packageHasActiveAdmins(String packageName); + + /** + * Calls {@code DevicePolicyManager.isUninstallInQueue()}. + * + * @see android.app.admin.DevicePolicyManager#isUninstallInQueue + */ + boolean isUninstallInQueue(String packageName); } diff --git a/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java b/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java index 18563b587f..95a154bff5 100644 --- a/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java +++ b/src/com/android/settings/enterprise/DevicePolicyManagerWrapperImpl.java @@ -101,4 +101,19 @@ public class DevicePolicyManagerWrapperImpl implements DevicePolicyManagerWrappe public List<String> getOwnerInstalledCaCerts(@NonNull UserHandle user) { return mDpm.getOwnerInstalledCaCerts(user); } + + @Override + public boolean isDeviceOwnerAppOnAnyUser(String packageName) { + return mDpm.isDeviceOwnerAppOnAnyUser(packageName); + } + + @Override + public boolean packageHasActiveAdmins(String packageName) { + return mDpm.packageHasActiveAdmins(packageName); + } + + @Override + public boolean isUninstallInQueue(String packageName) { + return mDpm.isUninstallInQueue(packageName); + } } |