Loading services/permission/java/com/android/server/permission/access/permission/PermissionService.kt +14 −2 Original line number Diff line number Diff line Loading @@ -1600,11 +1600,23 @@ class PermissionService( } override fun resetRuntimePermissions(androidPackage: AndroidPackage, userId: Int) { // TODO("Not yet implemented") service.mutateState { with(policy) { resetRuntimePermissions(androidPackage.packageName, userId) } } } override fun resetRuntimePermissionsForUser(userId: Int) { // TODO("Not yet implemented") packageManagerLocal.withUnfilteredSnapshot().use { snapshot -> service.mutateState { snapshot.packageStates.forEach { (_, packageState) -> with(policy) { resetRuntimePermissions(packageState.packageName, userId) } } } } } override fun addOnPermissionsChangeListener(listener: IOnPermissionsChangeListener) { Loading services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt +7 −8 Original line number Diff line number Diff line Loading @@ -211,16 +211,15 @@ class UidPermissionPolicy : SchemePolicy() { appId: Int, userId: Int ) { resetRuntimePermissions(packageName, appId, userId) resetRuntimePermissions(packageName, userId) } fun MutateStateScope.resetRuntimePermissions( packageName: String, appId: Int, userId: Int ) { val androidPackage = newState.systemState.packageStates[packageName]?.androidPackage ?: return fun MutateStateScope.resetRuntimePermissions(packageName: String, userId: Int) { // It's okay to skip resetting permissions for packages that are removed, // because their states will be trimmed in onPackageRemoved()/onAppIdRemoved() val packageState = newState.systemState.packageStates[packageName] ?: return val androidPackage = packageState.androidPackage ?: return val appId = packageState.appId androidPackage.requestedPermissions.forEachIndexed { _, permissionName -> val permission = newState.systemState.permissions[permissionName] ?: return@forEachIndexed Loading Loading
services/permission/java/com/android/server/permission/access/permission/PermissionService.kt +14 −2 Original line number Diff line number Diff line Loading @@ -1600,11 +1600,23 @@ class PermissionService( } override fun resetRuntimePermissions(androidPackage: AndroidPackage, userId: Int) { // TODO("Not yet implemented") service.mutateState { with(policy) { resetRuntimePermissions(androidPackage.packageName, userId) } } } override fun resetRuntimePermissionsForUser(userId: Int) { // TODO("Not yet implemented") packageManagerLocal.withUnfilteredSnapshot().use { snapshot -> service.mutateState { snapshot.packageStates.forEach { (_, packageState) -> with(policy) { resetRuntimePermissions(packageState.packageName, userId) } } } } } override fun addOnPermissionsChangeListener(listener: IOnPermissionsChangeListener) { Loading
services/permission/java/com/android/server/permission/access/permission/UidPermissionPolicy.kt +7 −8 Original line number Diff line number Diff line Loading @@ -211,16 +211,15 @@ class UidPermissionPolicy : SchemePolicy() { appId: Int, userId: Int ) { resetRuntimePermissions(packageName, appId, userId) resetRuntimePermissions(packageName, userId) } fun MutateStateScope.resetRuntimePermissions( packageName: String, appId: Int, userId: Int ) { val androidPackage = newState.systemState.packageStates[packageName]?.androidPackage ?: return fun MutateStateScope.resetRuntimePermissions(packageName: String, userId: Int) { // It's okay to skip resetting permissions for packages that are removed, // because their states will be trimmed in onPackageRemoved()/onAppIdRemoved() val packageState = newState.systemState.packageStates[packageName] ?: return val androidPackage = packageState.androidPackage ?: return val appId = packageState.appId androidPackage.requestedPermissions.forEachIndexed { _, permissionName -> val permission = newState.systemState.permissions[permissionName] ?: return@forEachIndexed Loading