Loading core/java/android/app/ActivityManager.java +18 −3 Original line number Diff line number Diff line Loading @@ -3740,9 +3740,24 @@ public class ActivityManager { Manifest.permission.ACCESS_INSTANT_APPS}) @UnsupportedAppUsage public boolean clearApplicationUserData(String packageName, IPackageDataObserver observer) { return clearApplicationUserData(packageName, observer, true); } /** * @hide */ @RequiresPermission(anyOf = {Manifest.permission.CLEAR_APP_USER_DATA, Manifest.permission.ACCESS_INSTANT_APPS}) private boolean clearApplicationUserData(String packageName, IPackageDataObserver observer, boolean restorePregrantedPermissions) { try { if (restorePregrantedPermissions) { return getService().clearApplicationUserData(packageName, false, observer, mContext.getUserId()); } else { return getService().clearApplicationUserDataWithoutPermissionReset(packageName, false, observer, mContext.getUserId()); } } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -3760,7 +3775,7 @@ public class ActivityManager { * data be erased; {@code false} otherwise. */ public boolean clearApplicationUserData() { return clearApplicationUserData(mContext.getPackageName(), null); return clearApplicationUserData(mContext.getPackageName(), null, false); } /** Loading core/java/android/app/ApplicationPackageManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -2978,7 +2978,8 @@ public class ApplicationPackageManager extends PackageManager { public void clearApplicationUserData(String packageName, IPackageDataObserver observer) { try { mPM.clearApplicationUserData(packageName, observer, getUserId()); mPM.clearApplicationUserData(packageName, observer, getUserId(), /* restorePregrantedPermissions */ true); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading core/java/android/app/ContextImpl.java +1 −1 Original line number Diff line number Diff line Loading @@ -652,7 +652,7 @@ class ContextImpl extends Context { + "if UserManager is not available. " + "(e.g. from inside an isolated process)"); } if (!um.isUserUnlockingOrUnlocked(UserHandle.myUserId())) { if (!um.isUserUnlockingOrUnlocked(getUserId())) { throw new IllegalStateException("SharedPreferences in " + "credential encrypted storage are not available until after " + "user (id " + UserHandle.myUserId() + ") is unlocked"); Loading core/java/android/app/IActivityManager.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,8 @@ interface IActivityManager { List<ActivityManager.ProcessErrorStateInfo> getProcessesInErrorState(); boolean clearApplicationUserData(in String packageName, boolean keepState, in IPackageDataObserver observer, int userId); boolean clearApplicationUserDataWithoutPermissionReset(in String packageName, boolean keepState, in IPackageDataObserver observer, int userId); void stopAppForUser(in String packageName, int userId); /** Returns {@code false} if the callback could not be registered, {@true} otherwise. */ boolean registerForegroundServiceObserver(in IForegroundServiceObserver callback); Loading core/java/android/app/IActivityTaskManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -182,6 +182,7 @@ interface IActivityTaskManager { List<IBinder> getAppTasks(in String callingPackage); void startSystemLockTaskMode(int taskId); void stopSystemLockTaskMode(); void rebuildSystemLockTaskPinnedMode(); void finishVoiceTask(in IVoiceInteractionSession session); int addAppTask(in IBinder activityToken, in Intent intent, in ActivityManager.TaskDescription description, in Bitmap thumbnail); Loading Loading
core/java/android/app/ActivityManager.java +18 −3 Original line number Diff line number Diff line Loading @@ -3740,9 +3740,24 @@ public class ActivityManager { Manifest.permission.ACCESS_INSTANT_APPS}) @UnsupportedAppUsage public boolean clearApplicationUserData(String packageName, IPackageDataObserver observer) { return clearApplicationUserData(packageName, observer, true); } /** * @hide */ @RequiresPermission(anyOf = {Manifest.permission.CLEAR_APP_USER_DATA, Manifest.permission.ACCESS_INSTANT_APPS}) private boolean clearApplicationUserData(String packageName, IPackageDataObserver observer, boolean restorePregrantedPermissions) { try { if (restorePregrantedPermissions) { return getService().clearApplicationUserData(packageName, false, observer, mContext.getUserId()); } else { return getService().clearApplicationUserDataWithoutPermissionReset(packageName, false, observer, mContext.getUserId()); } } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -3760,7 +3775,7 @@ public class ActivityManager { * data be erased; {@code false} otherwise. */ public boolean clearApplicationUserData() { return clearApplicationUserData(mContext.getPackageName(), null); return clearApplicationUserData(mContext.getPackageName(), null, false); } /** Loading
core/java/android/app/ApplicationPackageManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -2978,7 +2978,8 @@ public class ApplicationPackageManager extends PackageManager { public void clearApplicationUserData(String packageName, IPackageDataObserver observer) { try { mPM.clearApplicationUserData(packageName, observer, getUserId()); mPM.clearApplicationUserData(packageName, observer, getUserId(), /* restorePregrantedPermissions */ true); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading
core/java/android/app/ContextImpl.java +1 −1 Original line number Diff line number Diff line Loading @@ -652,7 +652,7 @@ class ContextImpl extends Context { + "if UserManager is not available. " + "(e.g. from inside an isolated process)"); } if (!um.isUserUnlockingOrUnlocked(UserHandle.myUserId())) { if (!um.isUserUnlockingOrUnlocked(getUserId())) { throw new IllegalStateException("SharedPreferences in " + "credential encrypted storage are not available until after " + "user (id " + UserHandle.myUserId() + ") is unlocked"); Loading
core/java/android/app/IActivityManager.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,8 @@ interface IActivityManager { List<ActivityManager.ProcessErrorStateInfo> getProcessesInErrorState(); boolean clearApplicationUserData(in String packageName, boolean keepState, in IPackageDataObserver observer, int userId); boolean clearApplicationUserDataWithoutPermissionReset(in String packageName, boolean keepState, in IPackageDataObserver observer, int userId); void stopAppForUser(in String packageName, int userId); /** Returns {@code false} if the callback could not be registered, {@true} otherwise. */ boolean registerForegroundServiceObserver(in IForegroundServiceObserver callback); Loading
core/java/android/app/IActivityTaskManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -182,6 +182,7 @@ interface IActivityTaskManager { List<IBinder> getAppTasks(in String callingPackage); void startSystemLockTaskMode(int taskId); void stopSystemLockTaskMode(); void rebuildSystemLockTaskPinnedMode(); void finishVoiceTask(in IVoiceInteractionSession session); int addAppTask(in IBinder activityToken, in Intent intent, in ActivityManager.TaskDescription description, in Bitmap thumbnail); Loading