Loading services/core/java/com/android/server/pm/permission/PermissionManagerService.java +17 −17 Original line number Diff line number Diff line Loading @@ -1836,8 +1836,8 @@ public class PermissionManagerService extends IPermissionManager.Stub { * @param pkg The package for which to reset. * @param userId The device user for which to do a reset. */ private void resetRuntimePermissionsInternal(final AndroidPackage pkg, final int userId) { private void resetRuntimePermissionsInternal(@NonNull AndroidPackage pkg, @UserIdInt int userId) { final String packageName = pkg.getPackageName(); // These are flags that can change base on user actions. Loading Loading @@ -2658,7 +2658,7 @@ public class PermissionManagerService extends IPermissionManager.Stub { } @NonNull private Set<String> getGrantedPermissions(@NonNull String packageName, private Set<String> getGrantedPermissionsInternal(@NonNull String packageName, @UserIdInt int userId) { final PackageSetting ps = mPackageManagerInt.getPackageSetting(packageName); if (ps == null) { Loading Loading @@ -2697,7 +2697,7 @@ public class PermissionManagerService extends IPermissionManager.Stub { } @NonNull private int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId) { private int[] getPermissionGidsInternal(@NonNull String permissionName, @UserIdInt int userId) { synchronized (mLock) { Permission permission = mRegistry.getPermission(permissionName); if (permission == null) { Loading Loading @@ -5068,12 +5068,16 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public Set<String> getGrantedPermissions(@NonNull String packageName, @UserIdInt int userId) { return PermissionManagerService.this.getGrantedPermissions(packageName, userId); Objects.requireNonNull(packageName, "packageName"); Preconditions.checkArgumentNonNegative(userId, "userId"); return getGrantedPermissionsInternal(packageName, userId); } @NonNull @Override public int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId) { return PermissionManagerService.this.getPermissionGids(permissionName, userId); Objects.requireNonNull(permissionName, "permissionName"); Preconditions.checkArgumentNonNegative(userId, "userId"); return getPermissionGidsInternal(permissionName, userId); } @NonNull @Override Loading Loading @@ -5114,13 +5118,15 @@ public class PermissionManagerService extends IPermissionManager.Stub { .updateAllPermissions(volumeUuid, sdkUpdated, mDefaultPermissionCallback); } @Override public void resetRuntimePermissions(AndroidPackage pkg, int userId) { PermissionManagerService.this.resetRuntimePermissionsInternal(pkg, userId); public void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId) { Objects.requireNonNull(pkg, "pkg"); Preconditions.checkArgumentNonNegative(userId, "userId"); resetRuntimePermissionsInternal(pkg, userId); } @Override public void resetAllRuntimePermissions(final int userId) { mPackageManagerInt.forEachPackage( (AndroidPackage pkg) -> resetRuntimePermissionsInternal(pkg, userId)); public void resetAllRuntimePermissions(@UserIdInt int userId) { Preconditions.checkArgumentNonNegative(userId, "userId"); mPackageManagerInt.forEachPackage(pkg -> resetRuntimePermissionsInternal(pkg, userId)); } @Override public void enforceCrossUserPermission(int callingUid, int userId, Loading Loading @@ -5354,12 +5360,6 @@ public class PermissionManagerService extends IPermissionManager.Stub { packageName, userId); } @Override public void grantDefaultPermissionsToDefaultBrowser(String packageName, int userId) { mDefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultBrowser(packageName, userId); } @Override public void onNewUserCreated(int userId) { // NOTE: This adds UPDATE_PERMISSIONS_REPLACE_PKG Loading services/core/java/com/android/server/pm/permission/PermissionManagerServiceInternal.java +24 −13 Original line number Diff line number Diff line Loading @@ -257,19 +257,24 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager public abstract void updateAllPermissions(@Nullable String volumeUuid, boolean sdkUpdate); /** * Resets any user permission state changes (eg. permissions and flags) of all * packages installed for the given user. * Reset the runtime permission state changes for a package. * * @see #resetRuntimePermissions(AndroidPackage, int) * TODO(zhanghai): Turn this into package change callback? * * @param pkg the package * @param userId the user ID */ public abstract void resetAllRuntimePermissions(@UserIdInt int userId); //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public abstract void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId); /** * Resets any user permission state changes (eg. permissions and flags) of the * specified package for the given user. * Reset the runtime permission state changes for all packages. * * @param userId the user ID */ public abstract void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId); //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public abstract void resetAllRuntimePermissions(@UserIdInt int userId); /** * We might auto-grant permissions if any permission of the group is already granted. Hence if Loading Loading @@ -357,15 +362,25 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager /** * Get all the permissions granted to a package. * * @param packageName the name of the package * @param userId the user ID * @return the names of the granted permissions */ //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) @NonNull public abstract Set<String> getGrantedPermissions(@NonNull String packageName, @UserIdInt int userId); /** * Get the GIDs of a permission. * * @param permissionName the name of the permission * @param userId the user ID * @return the GIDs of the permission */ @Nullable //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) @NonNull public abstract int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId); /** Loading Loading @@ -404,10 +419,6 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager boolean requireFullPermission, boolean checkShell, boolean requirePermissionWhenSameUser, @NonNull String message); /** Grants default browser permissions to the given package */ public abstract void grantDefaultPermissionsToDefaultBrowser( @NonNull String packageName, @UserIdInt int userId); /** HACK HACK methods to allow for partial migration of data to the PermissionManager class */ @Nullable public abstract Permission getPermissionTEMP(@NonNull String permName); Loading Loading
services/core/java/com/android/server/pm/permission/PermissionManagerService.java +17 −17 Original line number Diff line number Diff line Loading @@ -1836,8 +1836,8 @@ public class PermissionManagerService extends IPermissionManager.Stub { * @param pkg The package for which to reset. * @param userId The device user for which to do a reset. */ private void resetRuntimePermissionsInternal(final AndroidPackage pkg, final int userId) { private void resetRuntimePermissionsInternal(@NonNull AndroidPackage pkg, @UserIdInt int userId) { final String packageName = pkg.getPackageName(); // These are flags that can change base on user actions. Loading Loading @@ -2658,7 +2658,7 @@ public class PermissionManagerService extends IPermissionManager.Stub { } @NonNull private Set<String> getGrantedPermissions(@NonNull String packageName, private Set<String> getGrantedPermissionsInternal(@NonNull String packageName, @UserIdInt int userId) { final PackageSetting ps = mPackageManagerInt.getPackageSetting(packageName); if (ps == null) { Loading Loading @@ -2697,7 +2697,7 @@ public class PermissionManagerService extends IPermissionManager.Stub { } @NonNull private int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId) { private int[] getPermissionGidsInternal(@NonNull String permissionName, @UserIdInt int userId) { synchronized (mLock) { Permission permission = mRegistry.getPermission(permissionName); if (permission == null) { Loading Loading @@ -5068,12 +5068,16 @@ public class PermissionManagerService extends IPermissionManager.Stub { @Override public Set<String> getGrantedPermissions(@NonNull String packageName, @UserIdInt int userId) { return PermissionManagerService.this.getGrantedPermissions(packageName, userId); Objects.requireNonNull(packageName, "packageName"); Preconditions.checkArgumentNonNegative(userId, "userId"); return getGrantedPermissionsInternal(packageName, userId); } @NonNull @Override public int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId) { return PermissionManagerService.this.getPermissionGids(permissionName, userId); Objects.requireNonNull(permissionName, "permissionName"); Preconditions.checkArgumentNonNegative(userId, "userId"); return getPermissionGidsInternal(permissionName, userId); } @NonNull @Override Loading Loading @@ -5114,13 +5118,15 @@ public class PermissionManagerService extends IPermissionManager.Stub { .updateAllPermissions(volumeUuid, sdkUpdated, mDefaultPermissionCallback); } @Override public void resetRuntimePermissions(AndroidPackage pkg, int userId) { PermissionManagerService.this.resetRuntimePermissionsInternal(pkg, userId); public void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId) { Objects.requireNonNull(pkg, "pkg"); Preconditions.checkArgumentNonNegative(userId, "userId"); resetRuntimePermissionsInternal(pkg, userId); } @Override public void resetAllRuntimePermissions(final int userId) { mPackageManagerInt.forEachPackage( (AndroidPackage pkg) -> resetRuntimePermissionsInternal(pkg, userId)); public void resetAllRuntimePermissions(@UserIdInt int userId) { Preconditions.checkArgumentNonNegative(userId, "userId"); mPackageManagerInt.forEachPackage(pkg -> resetRuntimePermissionsInternal(pkg, userId)); } @Override public void enforceCrossUserPermission(int callingUid, int userId, Loading Loading @@ -5354,12 +5360,6 @@ public class PermissionManagerService extends IPermissionManager.Stub { packageName, userId); } @Override public void grantDefaultPermissionsToDefaultBrowser(String packageName, int userId) { mDefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultBrowser(packageName, userId); } @Override public void onNewUserCreated(int userId) { // NOTE: This adds UPDATE_PERMISSIONS_REPLACE_PKG Loading
services/core/java/com/android/server/pm/permission/PermissionManagerServiceInternal.java +24 −13 Original line number Diff line number Diff line Loading @@ -257,19 +257,24 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager public abstract void updateAllPermissions(@Nullable String volumeUuid, boolean sdkUpdate); /** * Resets any user permission state changes (eg. permissions and flags) of all * packages installed for the given user. * Reset the runtime permission state changes for a package. * * @see #resetRuntimePermissions(AndroidPackage, int) * TODO(zhanghai): Turn this into package change callback? * * @param pkg the package * @param userId the user ID */ public abstract void resetAllRuntimePermissions(@UserIdInt int userId); //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public abstract void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId); /** * Resets any user permission state changes (eg. permissions and flags) of the * specified package for the given user. * Reset the runtime permission state changes for all packages. * * @param userId the user ID */ public abstract void resetRuntimePermissions(@NonNull AndroidPackage pkg, @UserIdInt int userId); //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) public abstract void resetAllRuntimePermissions(@UserIdInt int userId); /** * We might auto-grant permissions if any permission of the group is already granted. Hence if Loading Loading @@ -357,15 +362,25 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager /** * Get all the permissions granted to a package. * * @param packageName the name of the package * @param userId the user ID * @return the names of the granted permissions */ //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) @NonNull public abstract Set<String> getGrantedPermissions(@NonNull String packageName, @UserIdInt int userId); /** * Get the GIDs of a permission. * * @param permissionName the name of the permission * @param userId the user ID * @return the GIDs of the permission */ @Nullable //@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) @NonNull public abstract int[] getPermissionGids(@NonNull String permissionName, @UserIdInt int userId); /** Loading Loading @@ -404,10 +419,6 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager boolean requireFullPermission, boolean checkShell, boolean requirePermissionWhenSameUser, @NonNull String message); /** Grants default browser permissions to the given package */ public abstract void grantDefaultPermissionsToDefaultBrowser( @NonNull String packageName, @UserIdInt int userId); /** HACK HACK methods to allow for partial migration of data to the PermissionManager class */ @Nullable public abstract Permission getPermissionTEMP(@NonNull String permName); Loading