diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2018-03-22 22:15:31 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-03-22 22:15:31 +0000 |
| commit | 6affc07065083468c5580b04d3572ef6acbb138c (patch) | |
| tree | ce99f9bff97029318db42ac178b83a8379d99319 /core/java/android/app/ApplicationPackageManager.java | |
| parent | fc16c4b3c48233be0f22db671d7e80188b2dea17 (diff) | |
| parent | 021b57ab8df0927aa1f78a2f3bb01d5e70594b1a (diff) | |
Merge "APIs to suspend packages with SUSPEND_APPS permission" into pi-dev
Diffstat (limited to 'core/java/android/app/ApplicationPackageManager.java')
| -rw-r--r-- | core/java/android/app/ApplicationPackageManager.java | 44 |
1 files changed, 41 insertions, 3 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java index b8c4ef783a60..fb8ded1e7a43 100644 --- a/core/java/android/app/ApplicationPackageManager.java +++ b/core/java/android/app/ApplicationPackageManager.java @@ -70,6 +70,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; +import android.os.PersistableBundle; import android.os.Process; import android.os.RemoteException; import android.os.SystemProperties; @@ -2151,16 +2152,42 @@ public class ApplicationPackageManager extends PackageManager { } @Override - public String[] setPackagesSuspendedAsUser(String[] packageNames, boolean suspended, - int userId) { + public String[] setPackagesSuspended(String[] packageNames, boolean suspended, + PersistableBundle appExtras, PersistableBundle launcherExtras, + String dialogMessage) { + // TODO (b/75332201): Pass in the dialogMessage and use it in the interceptor dialog try { - return mPM.setPackagesSuspendedAsUser(packageNames, suspended, userId); + return mPM.setPackagesSuspendedAsUser(packageNames, suspended, appExtras, + launcherExtras, mContext.getOpPackageName(), mContext.getUserId()); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } @Override + public PersistableBundle getSuspendedPackageAppExtras(String packageName) { + try { + return mPM.getPackageSuspendedAppExtras(packageName, mContext.getUserId()); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + @Override + public PersistableBundle getSuspendedPackageAppExtras() { + return getSuspendedPackageAppExtras(mContext.getOpPackageName()); + } + + @Override + public void setSuspendedPackageAppExtras(String packageName, PersistableBundle appExtras) { + try { + mPM.setSuspendedPackageAppExtras(packageName, appExtras, mContext.getUserId()); + } catch (RemoteException e) { + e.rethrowFromSystemServer(); + } + } + + @Override public boolean isPackageSuspendedForUser(String packageName, int userId) { try { return mPM.isPackageSuspendedForUser(packageName, userId); @@ -2171,6 +2198,17 @@ public class ApplicationPackageManager extends PackageManager { /** @hide */ @Override + public boolean isPackageSuspended(String packageName) { + return isPackageSuspendedForUser(packageName, mContext.getUserId()); + } + + @Override + public boolean isPackageSuspended() { + return isPackageSuspendedForUser(mContext.getOpPackageName(), mContext.getUserId()); + } + + /** @hide */ + @Override public void setApplicationCategoryHint(String packageName, int categoryHint) { try { mPM.setApplicationCategoryHint(packageName, categoryHint, |
