Loading core/java/android/permission/IPermissionManager.aidl +0 −6 Original line number Diff line number Diff line Loading @@ -48,10 +48,6 @@ interface IPermissionManager { void updatePermissionFlagsForAllApps(int flagMask, int flagValues, int userId); int checkPermission(String permName, String pkgName, int userId); int checkUidPermission(String permName, int uid); void addOnPermissionsChangeListener(in IOnPermissionsChangeListener listener); void removeOnPermissionsChangeListener(in IOnPermissionsChangeListener listener); Loading @@ -69,8 +65,6 @@ interface IPermissionManager { void revokeRuntimePermission(String packageName, String permName, int userId, String reason); void resetRuntimePermissions(); boolean shouldShowRequestPermissionRationale(String permName, String packageName, int userId); Loading core/java/android/permission/PermissionManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -1236,7 +1236,7 @@ public final class PermissionManager { private static int checkPackageNamePermissionUncached( String permName, String pkgName, @UserIdInt int userId) { try { return ActivityThread.getPermissionManager().checkPermission( return ActivityThread.getPackageManager().checkPermission( permName, pkgName, userId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); Loading services/core/java/com/android/server/pm/PackageManagerService.java +21 −55 Original line number Diff line number Diff line Loading @@ -295,7 +295,7 @@ import android.os.storage.StorageManager; import android.os.storage.StorageManagerInternal; import android.os.storage.VolumeInfo; import android.os.storage.VolumeRecord; import android.permission.IPermissionManager; import android.permission.PermissionManager; import android.provider.ContactsContract; import android.provider.DeviceConfig; import android.provider.Settings.Global; Loading Loading @@ -962,7 +962,6 @@ public class PackageManagerService extends IPackageManager.Stub private final Singleton<ArtManagerService> mArtManagerServiceProducer; private final Singleton<ApexManager> mApexManagerProducer; private final Singleton<ViewCompiler> mViewCompilerProducer; private final Singleton<IPermissionManager> mPermissionManagerProducer; private final Singleton<IncrementalManager> mIncrementalManagerProducer; private final Singleton<DefaultAppProvider> mDefaultAppProviderProducer; private final Singleton<DisplayMetrics> mDisplayMetricsProducer; Loading Loading @@ -994,7 +993,6 @@ public class PackageManagerService extends IPackageManager.Stub Producer<DexManager> dexManagerProducer, Producer<ArtManagerService> artManagerServiceProducer, Producer<ApexManager> apexManagerProducer, Producer<IPermissionManager> permissionManagerProducer, Producer<ViewCompiler> viewCompilerProducer, Producer<IncrementalManager> incrementalManagerProducer, Producer<DefaultAppProvider> defaultAppProviderProducer, Loading Loading @@ -1029,7 +1027,6 @@ public class PackageManagerService extends IPackageManager.Stub mDexManagerProducer = new Singleton<>(dexManagerProducer); mArtManagerServiceProducer = new Singleton<>(artManagerServiceProducer); mApexManagerProducer = new Singleton<>(apexManagerProducer); mPermissionManagerProducer = new Singleton<>(permissionManagerProducer); mViewCompilerProducer = new Singleton<>(viewCompilerProducer); mIncrementalManagerProducer = new Singleton<>(incrementalManagerProducer); mDefaultAppProviderProducer = new Singleton<>(defaultAppProviderProducer); Loading Loading @@ -1131,10 +1128,6 @@ public class PackageManagerService extends IPackageManager.Stub return mViewCompilerProducer.get(this, mPackageManager); } public IPermissionManager getPermissionManagerService() { return mPermissionManagerProducer.get(this, mPackageManager); } public Handler getBackgroundHandler() { return mBackgroundHandler; } Loading Loading @@ -1260,7 +1253,6 @@ public class PackageManagerService extends IPackageManager.Stub public OverlayConfig overlayConfig; public PackageDexOptimizer packageDexOptimizer; public PackageParser2.Callback packageParserCallback; public IPermissionManager permissionManagerService; public PendingPackageBroadcasts pendingPackageBroadcasts; public PackageManagerInternal pmInternal; public TestUtilityService testUtilityService; Loading Loading @@ -1381,8 +1373,6 @@ public class PackageManagerService extends IPackageManager.Stub // Internal interface for permission manager private final PermissionManagerServiceInternal mPermissionManager; // Public interface for permission manager private final IPermissionManager mPermissionManagerService; private final ComponentResolver mComponentResolver; // List of packages names to keep cached, even if they are uninstalled for all users Loading Loading @@ -2857,7 +2847,6 @@ public class PackageManagerService extends IPackageManager.Stub (i, pm) -> new ArtManagerService(i.getContext(), pm, i.getInstaller(), i.getInstallLock()), (i, pm) -> ApexManager.getInstance(), (i, pm) -> (IPermissionManager) ServiceManager.getService("permissionmgr"), (i, pm) -> new ViewCompiler(i.getInstallLock(), i.getInstaller()), (i, pm) -> (IncrementalManager) i.getContext().getSystemService(Context.INCREMENTAL_SERVICE), Loading Loading @@ -3080,7 +3069,6 @@ public class PackageManagerService extends IPackageManager.Stub mPackageDexOptimizer = testParams.packageDexOptimizer; mPackageParserCallback = testParams.packageParserCallback; mPendingBroadcasts = testParams.pendingPackageBroadcasts; mPermissionManagerService = testParams.permissionManagerService; mPmInternal = testParams.pmInternal; mTestUtilityService = testParams.testUtilityService; mProcessLoggingHandler = testParams.processLoggingHandler; Loading Loading @@ -3158,7 +3146,6 @@ public class PackageManagerService extends IPackageManager.Stub mComponentResolver = injector.getComponentResolver(); mPermissionManager = injector.getPermissionManagerServiceInternal(); mSettings = injector.getSettings(); mPermissionManagerService = injector.getPermissionManagerService(); mIncrementalManager = mInjector.getIncrementalManager(); mDefaultAppProvider = mInjector.getDefaultAppProvider(); mLegacyPermissionManager = mInjector.getLegacyPermissionManagerInternal(); Loading Loading @@ -5176,12 +5163,10 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public PermissionGroupInfo getPermissionGroupInfo(String groupName, int flags) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.getPermissionGroupInfo(groupName, flags); } catch (RemoteException ignore) { } return null; return mContext.getSystemService(PermissionManager.class) .getPermissionGroupInfo(groupName, flags); } @GuardedBy("mLock") Loading Loading @@ -6213,23 +6198,13 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public int checkPermission(String permName, String pkgName, int userId) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.checkPermission(permName, pkgName, userId); } catch (RemoteException ignore) { } return PackageManager.PERMISSION_DENIED; return mPermissionManager.checkPermission(pkgName, permName, userId); } // NOTE: Can't remove without a major refactor. Keep around for now. @Override public int checkUidPermission(String permName, int uid) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.checkUidPermission(permName, uid); } catch (RemoteException ignore) { } return PackageManager.PERMISSION_DENIED; return mPermissionManager.checkUidPermission(uid, permName); } @Override Loading @@ -6248,43 +6223,34 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public boolean addPermission(PermissionInfo info) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.addPermission(info, false); } catch (RemoteException ignore) { } return false; return mContext.getSystemService(PermissionManager.class).addPermission(info, false); } // NOTE: Can't remove due to unsupported app usage @Override public boolean addPermissionAsync(PermissionInfo info) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.addPermission(info, true); } catch (RemoteException ignore) { } return false; return mContext.getSystemService(PermissionManager.class).addPermission(info, true); } // NOTE: Can't remove due to unsupported app usage @Override public void removePermission(String permName) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL mPermissionManagerService.removePermission(permName); } catch (RemoteException ignore) { } mContext.getSystemService(PermissionManager.class).removePermission(permName); } // NOTE: Can't remove due to unsupported app usage @Override public void grantRuntimePermission(String packageName, String permName, final int userId) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL mPermissionManagerService.grantRuntimePermission(packageName, permName, userId); } catch (RemoteException ignore) { } mContext.getSystemService(PermissionManager.class) .grantRuntimePermission(packageName, permName, UserHandle.of(userId)); } @Override Loading Loading @@ -22521,7 +22487,7 @@ public class PackageManagerService extends IPackageManager.Stub public void onShellCommand(FileDescriptor in, FileDescriptor out, FileDescriptor err, String[] args, ShellCallback callback, ResultReceiver resultReceiver) { (new PackageManagerShellCommand(this, mPermissionManagerService, mContext)).exec( (new PackageManagerShellCommand(this, mContext)).exec( this, in, out, err, args, callback, resultReceiver); } services/core/java/com/android/server/pm/PackageManagerShellCommand.java +15 −14 Original line number Diff line number Diff line Loading @@ -89,7 +89,7 @@ import android.os.UserHandle; import android.os.UserManager; import android.os.incremental.V4Signature; import android.os.storage.StorageManager; import android.permission.IPermissionManager; import android.permission.PermissionManager; import android.system.ErrnoException; import android.system.Os; import android.text.TextUtils; Loading @@ -108,6 +108,7 @@ import com.android.server.FgThread; import com.android.server.LocalServices; import com.android.server.SystemConfig; import com.android.server.pm.PackageManagerShellCommandDataLoader.Metadata; import com.android.server.pm.permission.LegacyPermissionManagerInternal; import dalvik.system.DexFile; Loading Loading @@ -144,7 +145,8 @@ class PackageManagerShellCommand extends ShellCommand { private static final String TAG = "PackageManagerShellCommand"; final IPackageManager mInterface; final IPermissionManager mPermissionManager; final LegacyPermissionManagerInternal mLegacyPermissionManager; final PermissionManager mPermissionManager; final Context mContext; final private WeakHashMap<String, Resources> mResourceCache = new WeakHashMap<String, Resources>(); Loading @@ -153,10 +155,10 @@ class PackageManagerShellCommand extends ShellCommand { boolean mComponents; int mQueryFlags; PackageManagerShellCommand( PackageManagerService service, IPermissionManager permissionManager, Context context) { PackageManagerShellCommand(PackageManagerService service, Context context) { mInterface = service; mPermissionManager = permissionManager; mLegacyPermissionManager = LocalServices.getService(LegacyPermissionManagerInternal.class); mPermissionManager = context.getSystemService(PermissionManager.class); mContext = context; } Loading Loading @@ -887,8 +889,7 @@ class PackageManagerShellCommand extends ShellCommand { private int runListPermissionGroups() throws RemoteException { final PrintWriter pw = getOutPrintWriter(); final List<PermissionGroupInfo> pgs = mPermissionManager.getAllPermissionGroups(0).getList(); final List<PermissionGroupInfo> pgs = mPermissionManager.getAllPermissionGroups(0); final int count = pgs.size(); for (int p = 0; p < count ; p++) { Loading Loading @@ -935,7 +936,7 @@ class PackageManagerShellCommand extends ShellCommand { final ArrayList<String> groupList = new ArrayList<String>(); if (groups) { final List<PermissionGroupInfo> infos = mPermissionManager.getAllPermissionGroups(0 /*flags*/).getList(); mPermissionManager.getAllPermissionGroups(0 /*flags*/); final int count = infos.size(); for (int i = 0; i < count; i++) { groupList.add(infos.get(i).name); Loading Loading @@ -2297,18 +2298,18 @@ class PackageManagerShellCommand extends ShellCommand { getErrPrintWriter().println("Error: no permission specified"); return 1; } final int translatedUserId = translateUserId(userId, UserHandle.USER_NULL, "runGrantRevokePermission"); final UserHandle translatedUser = UserHandle.of(translateUserId(userId, UserHandle.USER_NULL, "runGrantRevokePermission")); if (grant) { mPermissionManager.grantRuntimePermission(pkg, perm, translatedUserId); mPermissionManager.grantRuntimePermission(pkg, perm, translatedUser); } else { mPermissionManager.revokeRuntimePermission(pkg, perm, translatedUserId, null); mPermissionManager.revokeRuntimePermission(pkg, perm, translatedUser, null); } return 0; } private int runResetPermissions() throws RemoteException { mPermissionManager.resetRuntimePermissions(); mLegacyPermissionManager.resetRuntimePermissions(); return 0; } Loading Loading @@ -3483,7 +3484,7 @@ class PackageManagerShellCommand extends ShellCommand { prefix = " "; } List<PermissionInfo> ps = mPermissionManager .queryPermissionsByGroup(groupList.get(i), 0 /*flags*/).getList(); .queryPermissionsByGroup(groupList.get(i), 0 /*flags*/); final int count = ps.size(); boolean first = true; for (int p = 0 ; p < count ; p++) { Loading services/core/java/com/android/server/pm/permission/LegacyPermissionManagerInternal.java +5 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,11 @@ import android.annotation.UserIdInt; * The internal interface for {@link LegacyPermissionManagerService}. */ public interface LegacyPermissionManagerInternal { /** * Reset the runtime permission state for all users and packages. */ void resetRuntimePermissions(); /** * Sets the dialer application packages provider. * @param provider The provider. Loading Loading
core/java/android/permission/IPermissionManager.aidl +0 −6 Original line number Diff line number Diff line Loading @@ -48,10 +48,6 @@ interface IPermissionManager { void updatePermissionFlagsForAllApps(int flagMask, int flagValues, int userId); int checkPermission(String permName, String pkgName, int userId); int checkUidPermission(String permName, int uid); void addOnPermissionsChangeListener(in IOnPermissionsChangeListener listener); void removeOnPermissionsChangeListener(in IOnPermissionsChangeListener listener); Loading @@ -69,8 +65,6 @@ interface IPermissionManager { void revokeRuntimePermission(String packageName, String permName, int userId, String reason); void resetRuntimePermissions(); boolean shouldShowRequestPermissionRationale(String permName, String packageName, int userId); Loading
core/java/android/permission/PermissionManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -1236,7 +1236,7 @@ public final class PermissionManager { private static int checkPackageNamePermissionUncached( String permName, String pkgName, @UserIdInt int userId) { try { return ActivityThread.getPermissionManager().checkPermission( return ActivityThread.getPackageManager().checkPermission( permName, pkgName, userId); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); Loading
services/core/java/com/android/server/pm/PackageManagerService.java +21 −55 Original line number Diff line number Diff line Loading @@ -295,7 +295,7 @@ import android.os.storage.StorageManager; import android.os.storage.StorageManagerInternal; import android.os.storage.VolumeInfo; import android.os.storage.VolumeRecord; import android.permission.IPermissionManager; import android.permission.PermissionManager; import android.provider.ContactsContract; import android.provider.DeviceConfig; import android.provider.Settings.Global; Loading Loading @@ -962,7 +962,6 @@ public class PackageManagerService extends IPackageManager.Stub private final Singleton<ArtManagerService> mArtManagerServiceProducer; private final Singleton<ApexManager> mApexManagerProducer; private final Singleton<ViewCompiler> mViewCompilerProducer; private final Singleton<IPermissionManager> mPermissionManagerProducer; private final Singleton<IncrementalManager> mIncrementalManagerProducer; private final Singleton<DefaultAppProvider> mDefaultAppProviderProducer; private final Singleton<DisplayMetrics> mDisplayMetricsProducer; Loading Loading @@ -994,7 +993,6 @@ public class PackageManagerService extends IPackageManager.Stub Producer<DexManager> dexManagerProducer, Producer<ArtManagerService> artManagerServiceProducer, Producer<ApexManager> apexManagerProducer, Producer<IPermissionManager> permissionManagerProducer, Producer<ViewCompiler> viewCompilerProducer, Producer<IncrementalManager> incrementalManagerProducer, Producer<DefaultAppProvider> defaultAppProviderProducer, Loading Loading @@ -1029,7 +1027,6 @@ public class PackageManagerService extends IPackageManager.Stub mDexManagerProducer = new Singleton<>(dexManagerProducer); mArtManagerServiceProducer = new Singleton<>(artManagerServiceProducer); mApexManagerProducer = new Singleton<>(apexManagerProducer); mPermissionManagerProducer = new Singleton<>(permissionManagerProducer); mViewCompilerProducer = new Singleton<>(viewCompilerProducer); mIncrementalManagerProducer = new Singleton<>(incrementalManagerProducer); mDefaultAppProviderProducer = new Singleton<>(defaultAppProviderProducer); Loading Loading @@ -1131,10 +1128,6 @@ public class PackageManagerService extends IPackageManager.Stub return mViewCompilerProducer.get(this, mPackageManager); } public IPermissionManager getPermissionManagerService() { return mPermissionManagerProducer.get(this, mPackageManager); } public Handler getBackgroundHandler() { return mBackgroundHandler; } Loading Loading @@ -1260,7 +1253,6 @@ public class PackageManagerService extends IPackageManager.Stub public OverlayConfig overlayConfig; public PackageDexOptimizer packageDexOptimizer; public PackageParser2.Callback packageParserCallback; public IPermissionManager permissionManagerService; public PendingPackageBroadcasts pendingPackageBroadcasts; public PackageManagerInternal pmInternal; public TestUtilityService testUtilityService; Loading Loading @@ -1381,8 +1373,6 @@ public class PackageManagerService extends IPackageManager.Stub // Internal interface for permission manager private final PermissionManagerServiceInternal mPermissionManager; // Public interface for permission manager private final IPermissionManager mPermissionManagerService; private final ComponentResolver mComponentResolver; // List of packages names to keep cached, even if they are uninstalled for all users Loading Loading @@ -2857,7 +2847,6 @@ public class PackageManagerService extends IPackageManager.Stub (i, pm) -> new ArtManagerService(i.getContext(), pm, i.getInstaller(), i.getInstallLock()), (i, pm) -> ApexManager.getInstance(), (i, pm) -> (IPermissionManager) ServiceManager.getService("permissionmgr"), (i, pm) -> new ViewCompiler(i.getInstallLock(), i.getInstaller()), (i, pm) -> (IncrementalManager) i.getContext().getSystemService(Context.INCREMENTAL_SERVICE), Loading Loading @@ -3080,7 +3069,6 @@ public class PackageManagerService extends IPackageManager.Stub mPackageDexOptimizer = testParams.packageDexOptimizer; mPackageParserCallback = testParams.packageParserCallback; mPendingBroadcasts = testParams.pendingPackageBroadcasts; mPermissionManagerService = testParams.permissionManagerService; mPmInternal = testParams.pmInternal; mTestUtilityService = testParams.testUtilityService; mProcessLoggingHandler = testParams.processLoggingHandler; Loading Loading @@ -3158,7 +3146,6 @@ public class PackageManagerService extends IPackageManager.Stub mComponentResolver = injector.getComponentResolver(); mPermissionManager = injector.getPermissionManagerServiceInternal(); mSettings = injector.getSettings(); mPermissionManagerService = injector.getPermissionManagerService(); mIncrementalManager = mInjector.getIncrementalManager(); mDefaultAppProvider = mInjector.getDefaultAppProvider(); mLegacyPermissionManager = mInjector.getLegacyPermissionManagerInternal(); Loading Loading @@ -5176,12 +5163,10 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public PermissionGroupInfo getPermissionGroupInfo(String groupName, int flags) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.getPermissionGroupInfo(groupName, flags); } catch (RemoteException ignore) { } return null; return mContext.getSystemService(PermissionManager.class) .getPermissionGroupInfo(groupName, flags); } @GuardedBy("mLock") Loading Loading @@ -6213,23 +6198,13 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public int checkPermission(String permName, String pkgName, int userId) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.checkPermission(permName, pkgName, userId); } catch (RemoteException ignore) { } return PackageManager.PERMISSION_DENIED; return mPermissionManager.checkPermission(pkgName, permName, userId); } // NOTE: Can't remove without a major refactor. Keep around for now. @Override public int checkUidPermission(String permName, int uid) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.checkUidPermission(permName, uid); } catch (RemoteException ignore) { } return PackageManager.PERMISSION_DENIED; return mPermissionManager.checkUidPermission(uid, permName); } @Override Loading @@ -6248,43 +6223,34 @@ public class PackageManagerService extends IPackageManager.Stub // NOTE: Can't remove due to unsupported app usage @Override public boolean addPermission(PermissionInfo info) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.addPermission(info, false); } catch (RemoteException ignore) { } return false; return mContext.getSystemService(PermissionManager.class).addPermission(info, false); } // NOTE: Can't remove due to unsupported app usage @Override public boolean addPermissionAsync(PermissionInfo info) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL return mPermissionManagerService.addPermission(info, true); } catch (RemoteException ignore) { } return false; return mContext.getSystemService(PermissionManager.class).addPermission(info, true); } // NOTE: Can't remove due to unsupported app usage @Override public void removePermission(String permName) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL mPermissionManagerService.removePermission(permName); } catch (RemoteException ignore) { } mContext.getSystemService(PermissionManager.class).removePermission(permName); } // NOTE: Can't remove due to unsupported app usage @Override public void grantRuntimePermission(String packageName, String permName, final int userId) { try { // Because this is accessed via the package manager service AIDL, // go through the permission manager service AIDL mPermissionManagerService.grantRuntimePermission(packageName, permName, userId); } catch (RemoteException ignore) { } mContext.getSystemService(PermissionManager.class) .grantRuntimePermission(packageName, permName, UserHandle.of(userId)); } @Override Loading Loading @@ -22521,7 +22487,7 @@ public class PackageManagerService extends IPackageManager.Stub public void onShellCommand(FileDescriptor in, FileDescriptor out, FileDescriptor err, String[] args, ShellCallback callback, ResultReceiver resultReceiver) { (new PackageManagerShellCommand(this, mPermissionManagerService, mContext)).exec( (new PackageManagerShellCommand(this, mContext)).exec( this, in, out, err, args, callback, resultReceiver); }
services/core/java/com/android/server/pm/PackageManagerShellCommand.java +15 −14 Original line number Diff line number Diff line Loading @@ -89,7 +89,7 @@ import android.os.UserHandle; import android.os.UserManager; import android.os.incremental.V4Signature; import android.os.storage.StorageManager; import android.permission.IPermissionManager; import android.permission.PermissionManager; import android.system.ErrnoException; import android.system.Os; import android.text.TextUtils; Loading @@ -108,6 +108,7 @@ import com.android.server.FgThread; import com.android.server.LocalServices; import com.android.server.SystemConfig; import com.android.server.pm.PackageManagerShellCommandDataLoader.Metadata; import com.android.server.pm.permission.LegacyPermissionManagerInternal; import dalvik.system.DexFile; Loading Loading @@ -144,7 +145,8 @@ class PackageManagerShellCommand extends ShellCommand { private static final String TAG = "PackageManagerShellCommand"; final IPackageManager mInterface; final IPermissionManager mPermissionManager; final LegacyPermissionManagerInternal mLegacyPermissionManager; final PermissionManager mPermissionManager; final Context mContext; final private WeakHashMap<String, Resources> mResourceCache = new WeakHashMap<String, Resources>(); Loading @@ -153,10 +155,10 @@ class PackageManagerShellCommand extends ShellCommand { boolean mComponents; int mQueryFlags; PackageManagerShellCommand( PackageManagerService service, IPermissionManager permissionManager, Context context) { PackageManagerShellCommand(PackageManagerService service, Context context) { mInterface = service; mPermissionManager = permissionManager; mLegacyPermissionManager = LocalServices.getService(LegacyPermissionManagerInternal.class); mPermissionManager = context.getSystemService(PermissionManager.class); mContext = context; } Loading Loading @@ -887,8 +889,7 @@ class PackageManagerShellCommand extends ShellCommand { private int runListPermissionGroups() throws RemoteException { final PrintWriter pw = getOutPrintWriter(); final List<PermissionGroupInfo> pgs = mPermissionManager.getAllPermissionGroups(0).getList(); final List<PermissionGroupInfo> pgs = mPermissionManager.getAllPermissionGroups(0); final int count = pgs.size(); for (int p = 0; p < count ; p++) { Loading Loading @@ -935,7 +936,7 @@ class PackageManagerShellCommand extends ShellCommand { final ArrayList<String> groupList = new ArrayList<String>(); if (groups) { final List<PermissionGroupInfo> infos = mPermissionManager.getAllPermissionGroups(0 /*flags*/).getList(); mPermissionManager.getAllPermissionGroups(0 /*flags*/); final int count = infos.size(); for (int i = 0; i < count; i++) { groupList.add(infos.get(i).name); Loading Loading @@ -2297,18 +2298,18 @@ class PackageManagerShellCommand extends ShellCommand { getErrPrintWriter().println("Error: no permission specified"); return 1; } final int translatedUserId = translateUserId(userId, UserHandle.USER_NULL, "runGrantRevokePermission"); final UserHandle translatedUser = UserHandle.of(translateUserId(userId, UserHandle.USER_NULL, "runGrantRevokePermission")); if (grant) { mPermissionManager.grantRuntimePermission(pkg, perm, translatedUserId); mPermissionManager.grantRuntimePermission(pkg, perm, translatedUser); } else { mPermissionManager.revokeRuntimePermission(pkg, perm, translatedUserId, null); mPermissionManager.revokeRuntimePermission(pkg, perm, translatedUser, null); } return 0; } private int runResetPermissions() throws RemoteException { mPermissionManager.resetRuntimePermissions(); mLegacyPermissionManager.resetRuntimePermissions(); return 0; } Loading Loading @@ -3483,7 +3484,7 @@ class PackageManagerShellCommand extends ShellCommand { prefix = " "; } List<PermissionInfo> ps = mPermissionManager .queryPermissionsByGroup(groupList.get(i), 0 /*flags*/).getList(); .queryPermissionsByGroup(groupList.get(i), 0 /*flags*/); final int count = ps.size(); boolean first = true; for (int p = 0 ; p < count ; p++) { Loading
services/core/java/com/android/server/pm/permission/LegacyPermissionManagerInternal.java +5 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,11 @@ import android.annotation.UserIdInt; * The internal interface for {@link LegacyPermissionManagerService}. */ public interface LegacyPermissionManagerInternal { /** * Reset the runtime permission state for all users and packages. */ void resetRuntimePermissions(); /** * Sets the dialer application packages provider. * @param provider The provider. Loading