Loading api/system-current.txt +8 −8 Original line number Original line Diff line number Diff line Loading @@ -5661,16 +5661,16 @@ package android.permission { ctor public PermissionControllerService(); ctor public PermissionControllerService(); method public final void attachBaseContext(android.content.Context); method public final void attachBaseContext(android.content.Context); method @NonNull public final android.os.IBinder onBind(android.content.Intent); method @NonNull public final android.os.IBinder onBind(android.content.Intent); method public abstract int onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int); method @WorkerThread public abstract int onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int); method @NonNull public abstract java.util.List<android.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String); method @WorkerThread @NonNull public abstract java.util.List<android.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String); method @NonNull public abstract java.util.List<android.permission.RuntimePermissionUsageInfo> onGetPermissionUsages(boolean, long); method @WorkerThread @NonNull public abstract java.util.List<android.permission.RuntimePermissionUsageInfo> onGetPermissionUsages(boolean, long); method public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream); method @WorkerThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream); method public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); method @WorkerThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); method @BinderThread public abstract boolean onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle); method @BinderThread public abstract boolean onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle); method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream); method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream); method public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String); method @WorkerThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String); method @NonNull public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String); method @WorkerThread @NonNull public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String); method public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int); method @WorkerThread public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int); field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService"; field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService"; } } Loading core/java/android/permission/PermissionControllerService.java +34 −29 Original line number Original line Diff line number Diff line Loading @@ -28,18 +28,19 @@ import static com.android.internal.util.Preconditions.checkCollectionElementsNot import static com.android.internal.util.Preconditions.checkFlagsArgument; import static com.android.internal.util.Preconditions.checkFlagsArgument; import static com.android.internal.util.Preconditions.checkNotNull; import static com.android.internal.util.Preconditions.checkNotNull; import static com.android.internal.util.Preconditions.checkStringNotEmpty; import static com.android.internal.util.Preconditions.checkStringNotEmpty; import static com.android.internal.util.function.pooled.PooledLambda.obtainMessage; import android.Manifest; import android.Manifest; import android.annotation.BinderThread; import android.annotation.BinderThread; import android.annotation.NonNull; import android.annotation.NonNull; import android.annotation.SystemApi; import android.annotation.SystemApi; import android.annotation.WorkerThread; import android.app.Service; import android.app.Service; import android.app.admin.DevicePolicyManager.PermissionGrantState; import android.app.admin.DevicePolicyManager.PermissionGrantState; import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager; import android.os.AsyncTask; import android.os.Bundle; import android.os.Bundle; import android.os.Handler; import android.os.Handler; import android.os.IBinder; import android.os.IBinder; Loading Loading @@ -96,6 +97,7 @@ public abstract class PermissionControllerService extends Service { * * * @return the actually removed permissions as {@code Map<packageName, List<permission>>} * @return the actually removed permissions as {@code Map<packageName, List<permission>>} */ */ @WorkerThread public abstract @NonNull Map<String, List<String>> onRevokeRuntimePermissions( public abstract @NonNull Map<String, List<String>> onRevokeRuntimePermissions( @NonNull Map<String, List<String>> requests, boolean doDryRun, @NonNull Map<String, List<String>> requests, boolean doDryRun, @PermissionControllerManager.Reason int reason, @NonNull String callerPackageName); @PermissionControllerManager.Reason int reason, @NonNull String callerPackageName); Loading @@ -106,6 +108,7 @@ public abstract class PermissionControllerService extends Service { * @param user The user to back up * @param user The user to back up * @param backup The stream to write the backup to * @param backup The stream to write the backup to */ */ @WorkerThread public abstract void onGetRuntimePermissionsBackup(@NonNull UserHandle user, public abstract void onGetRuntimePermissionsBackup(@NonNull UserHandle user, @NonNull OutputStream backup); @NonNull OutputStream backup); Loading Loading @@ -142,6 +145,7 @@ public abstract class PermissionControllerService extends Service { * * * @return descriptions of the runtime permissions of the app * @return descriptions of the runtime permissions of the app */ */ @WorkerThread public abstract @NonNull List<RuntimePermissionPresentationInfo> onGetAppPermissions( public abstract @NonNull List<RuntimePermissionPresentationInfo> onGetAppPermissions( @NonNull String packageName); @NonNull String packageName); Loading @@ -151,6 +155,7 @@ public abstract class PermissionControllerService extends Service { * @param packageName The package for which to revoke * @param packageName The package for which to revoke * @param permissionName The permission to revoke * @param permissionName The permission to revoke */ */ @WorkerThread public abstract void onRevokeRuntimePermission(@NonNull String packageName, public abstract void onRevokeRuntimePermission(@NonNull String packageName, @NonNull String permissionName); @NonNull String permissionName); Loading @@ -163,6 +168,7 @@ public abstract class PermissionControllerService extends Service { * * * @return the number of apps that have one of the permissions * @return the number of apps that have one of the permissions */ */ @WorkerThread public abstract int onCountPermissionApps(@NonNull List<String> permissionNames, public abstract int onCountPermissionApps(@NonNull List<String> permissionNames, @CountPermissionAppsFlag int flags); @CountPermissionAppsFlag int flags); Loading @@ -174,6 +180,7 @@ public abstract class PermissionControllerService extends Service { * * * @return descriptions of the users of permissions * @return descriptions of the users of permissions */ */ @WorkerThread public abstract @NonNull List<RuntimePermissionUsageInfo> onGetPermissionUsages( public abstract @NonNull List<RuntimePermissionUsageInfo> onGetPermissionUsages( boolean countSystem, long numMillis); boolean countSystem, long numMillis); Loading @@ -186,6 +193,7 @@ public abstract class PermissionControllerService extends Service { * @see PermissionManager#getRuntimePermissionsVersion() * @see PermissionManager#getRuntimePermissionsVersion() * @see PermissionManager#setRuntimePermissionsVersion(int) * @see PermissionManager#setRuntimePermissionsVersion(int) */ */ @WorkerThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); /** /** Loading @@ -196,6 +204,7 @@ public abstract class PermissionControllerService extends Service { * @param permission Permission to change * @param permission Permission to change * @param grantState State to set the permission into * @param grantState State to set the permission into */ */ @WorkerThread public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin( public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin( @NonNull String callerPackageName, @NonNull String packageName, @NonNull String callerPackageName, @NonNull String packageName, @NonNull String permission, @PermissionGrantState int grantState); @NonNull String permission, @PermissionGrantState int grantState); Loading Loading @@ -232,10 +241,9 @@ public abstract class PermissionControllerService extends Service { throw new RuntimeException(e); throw new RuntimeException(e); } } mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute(() -> PermissionControllerService::revokeRuntimePermissions, PermissionControllerService.this.revokeRuntimePermissions(request, doDryRun, PermissionControllerService.this, request, doDryRun, reason, reason, callerPackageName, callback)); callerPackageName, callback)); } } @Override @Override Loading @@ -245,9 +253,8 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute(() -> PermissionControllerService::getRuntimePermissionsBackup, PermissionControllerService.this.getRuntimePermissionsBackup(user, pipe)); PermissionControllerService.this, user, pipe)); } } @Override @Override Loading Loading @@ -287,9 +294,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::getAppPermissions, () -> PermissionControllerService.this.getAppPermissions(packageName, PermissionControllerService.this, packageName, callback)); callback)); } } @Override @Override Loading @@ -299,9 +306,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::onRevokeRuntimePermission, () -> PermissionControllerService.this.onRevokeRuntimePermission( PermissionControllerService.this, packageName, permissionName)); packageName, permissionName)); } } @Override @Override Loading @@ -313,10 +320,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::countPermissionApps, () -> PermissionControllerService.this.countPermissionApps(permissionNames, PermissionControllerService.this, permissionNames, flags, flags, callback)); callback)); } } @Override @Override Loading @@ -327,10 +333,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::getPermissionUsages, () -> PermissionControllerService.this.getPermissionUsages(countSystem, PermissionControllerService.this, countSystem, numMillis, numMillis, callback)); callback)); } } @Override @Override Loading @@ -356,10 +361,10 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, null); null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( PermissionControllerService::setRuntimePermissionGrantStateByDeviceAdmin, () -> PermissionControllerService.this PermissionControllerService.this, callerPackageName, packageName, .setRuntimePermissionGrantStateByDeviceAdmin(callerPackageName, permission, grantState, callback)); packageName, permission, grantState, callback)); } } @Override @Override Loading @@ -369,9 +374,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, null); null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( PermissionControllerService::grantOrUpgradeDefaultRuntimePermissions, () -> PermissionControllerService.this PermissionControllerService.this, callback)); .grantOrUpgradeDefaultRuntimePermissions(callback)); } } }; }; } } Loading Loading
api/system-current.txt +8 −8 Original line number Original line Diff line number Diff line Loading @@ -5661,16 +5661,16 @@ package android.permission { ctor public PermissionControllerService(); ctor public PermissionControllerService(); method public final void attachBaseContext(android.content.Context); method public final void attachBaseContext(android.content.Context); method @NonNull public final android.os.IBinder onBind(android.content.Intent); method @NonNull public final android.os.IBinder onBind(android.content.Intent); method public abstract int onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int); method @WorkerThread public abstract int onCountPermissionApps(@NonNull java.util.List<java.lang.String>, int); method @NonNull public abstract java.util.List<android.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String); method @WorkerThread @NonNull public abstract java.util.List<android.permission.RuntimePermissionPresentationInfo> onGetAppPermissions(@NonNull String); method @NonNull public abstract java.util.List<android.permission.RuntimePermissionUsageInfo> onGetPermissionUsages(boolean, long); method @WorkerThread @NonNull public abstract java.util.List<android.permission.RuntimePermissionUsageInfo> onGetPermissionUsages(boolean, long); method public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream); method @WorkerThread public abstract void onGetRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.OutputStream); method public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); method @WorkerThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); method @BinderThread public abstract boolean onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle); method @BinderThread public abstract boolean onRestoreDelayedRuntimePermissionsBackup(@NonNull String, @NonNull android.os.UserHandle); method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream); method @BinderThread public abstract void onRestoreRuntimePermissionsBackup(@NonNull android.os.UserHandle, @NonNull java.io.InputStream); method public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String); method @WorkerThread public abstract void onRevokeRuntimePermission(@NonNull String, @NonNull String); method @NonNull public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String); method @WorkerThread @NonNull public abstract java.util.Map<java.lang.String,java.util.List<java.lang.String>> onRevokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull String); method public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int); method @WorkerThread public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin(@NonNull String, @NonNull String, @NonNull String, int); field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService"; field public static final String SERVICE_INTERFACE = "android.permission.PermissionControllerService"; } } Loading
core/java/android/permission/PermissionControllerService.java +34 −29 Original line number Original line Diff line number Diff line Loading @@ -28,18 +28,19 @@ import static com.android.internal.util.Preconditions.checkCollectionElementsNot import static com.android.internal.util.Preconditions.checkFlagsArgument; import static com.android.internal.util.Preconditions.checkFlagsArgument; import static com.android.internal.util.Preconditions.checkNotNull; import static com.android.internal.util.Preconditions.checkNotNull; import static com.android.internal.util.Preconditions.checkStringNotEmpty; import static com.android.internal.util.Preconditions.checkStringNotEmpty; import static com.android.internal.util.function.pooled.PooledLambda.obtainMessage; import android.Manifest; import android.Manifest; import android.annotation.BinderThread; import android.annotation.BinderThread; import android.annotation.NonNull; import android.annotation.NonNull; import android.annotation.SystemApi; import android.annotation.SystemApi; import android.annotation.WorkerThread; import android.app.Service; import android.app.Service; import android.app.admin.DevicePolicyManager.PermissionGrantState; import android.app.admin.DevicePolicyManager.PermissionGrantState; import android.content.Context; import android.content.Context; import android.content.Intent; import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager; import android.os.AsyncTask; import android.os.Bundle; import android.os.Bundle; import android.os.Handler; import android.os.Handler; import android.os.IBinder; import android.os.IBinder; Loading Loading @@ -96,6 +97,7 @@ public abstract class PermissionControllerService extends Service { * * * @return the actually removed permissions as {@code Map<packageName, List<permission>>} * @return the actually removed permissions as {@code Map<packageName, List<permission>>} */ */ @WorkerThread public abstract @NonNull Map<String, List<String>> onRevokeRuntimePermissions( public abstract @NonNull Map<String, List<String>> onRevokeRuntimePermissions( @NonNull Map<String, List<String>> requests, boolean doDryRun, @NonNull Map<String, List<String>> requests, boolean doDryRun, @PermissionControllerManager.Reason int reason, @NonNull String callerPackageName); @PermissionControllerManager.Reason int reason, @NonNull String callerPackageName); Loading @@ -106,6 +108,7 @@ public abstract class PermissionControllerService extends Service { * @param user The user to back up * @param user The user to back up * @param backup The stream to write the backup to * @param backup The stream to write the backup to */ */ @WorkerThread public abstract void onGetRuntimePermissionsBackup(@NonNull UserHandle user, public abstract void onGetRuntimePermissionsBackup(@NonNull UserHandle user, @NonNull OutputStream backup); @NonNull OutputStream backup); Loading Loading @@ -142,6 +145,7 @@ public abstract class PermissionControllerService extends Service { * * * @return descriptions of the runtime permissions of the app * @return descriptions of the runtime permissions of the app */ */ @WorkerThread public abstract @NonNull List<RuntimePermissionPresentationInfo> onGetAppPermissions( public abstract @NonNull List<RuntimePermissionPresentationInfo> onGetAppPermissions( @NonNull String packageName); @NonNull String packageName); Loading @@ -151,6 +155,7 @@ public abstract class PermissionControllerService extends Service { * @param packageName The package for which to revoke * @param packageName The package for which to revoke * @param permissionName The permission to revoke * @param permissionName The permission to revoke */ */ @WorkerThread public abstract void onRevokeRuntimePermission(@NonNull String packageName, public abstract void onRevokeRuntimePermission(@NonNull String packageName, @NonNull String permissionName); @NonNull String permissionName); Loading @@ -163,6 +168,7 @@ public abstract class PermissionControllerService extends Service { * * * @return the number of apps that have one of the permissions * @return the number of apps that have one of the permissions */ */ @WorkerThread public abstract int onCountPermissionApps(@NonNull List<String> permissionNames, public abstract int onCountPermissionApps(@NonNull List<String> permissionNames, @CountPermissionAppsFlag int flags); @CountPermissionAppsFlag int flags); Loading @@ -174,6 +180,7 @@ public abstract class PermissionControllerService extends Service { * * * @return descriptions of the users of permissions * @return descriptions of the users of permissions */ */ @WorkerThread public abstract @NonNull List<RuntimePermissionUsageInfo> onGetPermissionUsages( public abstract @NonNull List<RuntimePermissionUsageInfo> onGetPermissionUsages( boolean countSystem, long numMillis); boolean countSystem, long numMillis); Loading @@ -186,6 +193,7 @@ public abstract class PermissionControllerService extends Service { * @see PermissionManager#getRuntimePermissionsVersion() * @see PermissionManager#getRuntimePermissionsVersion() * @see PermissionManager#setRuntimePermissionsVersion(int) * @see PermissionManager#setRuntimePermissionsVersion(int) */ */ @WorkerThread public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); public abstract void onGrantOrUpgradeDefaultRuntimePermissions(); /** /** Loading @@ -196,6 +204,7 @@ public abstract class PermissionControllerService extends Service { * @param permission Permission to change * @param permission Permission to change * @param grantState State to set the permission into * @param grantState State to set the permission into */ */ @WorkerThread public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin( public abstract boolean onSetRuntimePermissionGrantStateByDeviceAdmin( @NonNull String callerPackageName, @NonNull String packageName, @NonNull String callerPackageName, @NonNull String packageName, @NonNull String permission, @PermissionGrantState int grantState); @NonNull String permission, @PermissionGrantState int grantState); Loading Loading @@ -232,10 +241,9 @@ public abstract class PermissionControllerService extends Service { throw new RuntimeException(e); throw new RuntimeException(e); } } mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute(() -> PermissionControllerService::revokeRuntimePermissions, PermissionControllerService.this.revokeRuntimePermissions(request, doDryRun, PermissionControllerService.this, request, doDryRun, reason, reason, callerPackageName, callback)); callerPackageName, callback)); } } @Override @Override Loading @@ -245,9 +253,8 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute(() -> PermissionControllerService::getRuntimePermissionsBackup, PermissionControllerService.this.getRuntimePermissionsBackup(user, pipe)); PermissionControllerService.this, user, pipe)); } } @Override @Override Loading Loading @@ -287,9 +294,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::getAppPermissions, () -> PermissionControllerService.this.getAppPermissions(packageName, PermissionControllerService.this, packageName, callback)); callback)); } } @Override @Override Loading @@ -299,9 +306,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.REVOKE_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::onRevokeRuntimePermission, () -> PermissionControllerService.this.onRevokeRuntimePermission( PermissionControllerService.this, packageName, permissionName)); packageName, permissionName)); } } @Override @Override Loading @@ -313,10 +320,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::countPermissionApps, () -> PermissionControllerService.this.countPermissionApps(permissionNames, PermissionControllerService.this, permissionNames, flags, flags, callback)); callback)); } } @Override @Override Loading @@ -327,10 +333,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); enforceCallingPermission(Manifest.permission.GET_RUNTIME_PERMISSIONS, null); mHandler.sendMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( obtainMessage(PermissionControllerService::getPermissionUsages, () -> PermissionControllerService.this.getPermissionUsages(countSystem, PermissionControllerService.this, countSystem, numMillis, numMillis, callback)); callback)); } } @Override @Override Loading @@ -356,10 +361,10 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, null); null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( PermissionControllerService::setRuntimePermissionGrantStateByDeviceAdmin, () -> PermissionControllerService.this PermissionControllerService.this, callerPackageName, packageName, .setRuntimePermissionGrantStateByDeviceAdmin(callerPackageName, permission, grantState, callback)); packageName, permission, grantState, callback)); } } @Override @Override Loading @@ -369,9 +374,9 @@ public abstract class PermissionControllerService extends Service { enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, enforceCallingPermission(Manifest.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY, null); null); mHandler.sendMessage(obtainMessage( AsyncTask.THREAD_POOL_EXECUTOR.execute( PermissionControllerService::grantOrUpgradeDefaultRuntimePermissions, () -> PermissionControllerService.this PermissionControllerService.this, callback)); .grantOrUpgradeDefaultRuntimePermissions(callback)); } } }; }; } } Loading