Loading services/core/java/com/android/server/pm/DumpState.java +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ public final class DumpState { public static final int OPTION_SHOW_FILTERS = 1 << 0; public static final int OPTION_DUMP_ALL_COMPONENTS = 1 << 1; public static final int OPTION_SKIP_PERMISSIONS = 1 << 2; private int mTypes; Loading services/core/java/com/android/server/pm/PackageManagerService.java +3 −0 Original line number Diff line number Diff line Loading @@ -21782,6 +21782,9 @@ public class PackageManagerService extends IPackageManager.Stub dumpState.setDump(DumpState.DUMP_PACKAGES); } else if ("s".equals(cmd) || "shared-users".equals(cmd)) { dumpState.setDump(DumpState.DUMP_SHARED_USERS); if (opti < args.length && "noperm".equals(args[opti])) { dumpState.setOptionEnabled(DumpState.OPTION_SKIP_PERMISSIONS); } } else if ("prov".equals(cmd) || "providers".equals(cmd)) { dumpState.setDump(DumpState.DUMP_PROVIDERS); } else if ("m".equals(cmd) || "messages".equals(cmd)) { services/core/java/com/android/server/pm/Settings.java +22 −6 Original line number Diff line number Diff line Loading @@ -4922,6 +4922,7 @@ public final class Settings { pw.println("Shared users:"); printedSomething = true; } pw.print(" SharedUser ["); pw.print(su.name); pw.print("] ("); Loading @@ -4931,18 +4932,33 @@ public final class Settings { String prefix = " "; pw.print(prefix); pw.print("userId="); pw.println(su.userId); PermissionsState permissionsState = su.getPermissionsState(); pw.print(prefix); pw.println("Packages"); final int numPackages = su.packages.size(); for (int i = 0; i < numPackages; i++) { final PackageSetting ps = su.packages.valueAt(i); if (ps != null) { pw.print(prefix + " "); pw.println(ps.toString()); } else { pw.print(prefix + " "); pw.println("NULL?!"); } } if (dumpState.isOptionEnabled(DumpState.OPTION_SKIP_PERMISSIONS)) { continue; } final PermissionsState permissionsState = su.getPermissionsState(); dumpInstallPermissionsLPr(pw, prefix, permissionNames, permissionsState); for (int userId : UserManagerService.getInstance().getUserIds()) { final int[] gids = permissionsState.computeGids(userId); List<PermissionState> permissions = permissionsState .getRuntimePermissionStates(userId); final List<PermissionState> permissions = permissionsState.getRuntimePermissionStates(userId); if (!ArrayUtils.isEmpty(gids) || !permissions.isEmpty()) { pw.print(prefix); pw.print("User "); pw.print(userId); pw.println(": "); dumpGidsLPr(pw, prefix + " ", gids); dumpRuntimePermissionsLPr(pw, prefix + " ", permissionNames, permissions, packageName != null); dumpRuntimePermissionsLPr(pw, prefix + " ", permissionNames, permissions, packageName != null); } } } else { Loading Loading
services/core/java/com/android/server/pm/DumpState.java +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ public final class DumpState { public static final int OPTION_SHOW_FILTERS = 1 << 0; public static final int OPTION_DUMP_ALL_COMPONENTS = 1 << 1; public static final int OPTION_SKIP_PERMISSIONS = 1 << 2; private int mTypes; Loading
services/core/java/com/android/server/pm/PackageManagerService.java +3 −0 Original line number Diff line number Diff line Loading @@ -21782,6 +21782,9 @@ public class PackageManagerService extends IPackageManager.Stub dumpState.setDump(DumpState.DUMP_PACKAGES); } else if ("s".equals(cmd) || "shared-users".equals(cmd)) { dumpState.setDump(DumpState.DUMP_SHARED_USERS); if (opti < args.length && "noperm".equals(args[opti])) { dumpState.setOptionEnabled(DumpState.OPTION_SKIP_PERMISSIONS); } } else if ("prov".equals(cmd) || "providers".equals(cmd)) { dumpState.setDump(DumpState.DUMP_PROVIDERS); } else if ("m".equals(cmd) || "messages".equals(cmd)) {
services/core/java/com/android/server/pm/Settings.java +22 −6 Original line number Diff line number Diff line Loading @@ -4922,6 +4922,7 @@ public final class Settings { pw.println("Shared users:"); printedSomething = true; } pw.print(" SharedUser ["); pw.print(su.name); pw.print("] ("); Loading @@ -4931,18 +4932,33 @@ public final class Settings { String prefix = " "; pw.print(prefix); pw.print("userId="); pw.println(su.userId); PermissionsState permissionsState = su.getPermissionsState(); pw.print(prefix); pw.println("Packages"); final int numPackages = su.packages.size(); for (int i = 0; i < numPackages; i++) { final PackageSetting ps = su.packages.valueAt(i); if (ps != null) { pw.print(prefix + " "); pw.println(ps.toString()); } else { pw.print(prefix + " "); pw.println("NULL?!"); } } if (dumpState.isOptionEnabled(DumpState.OPTION_SKIP_PERMISSIONS)) { continue; } final PermissionsState permissionsState = su.getPermissionsState(); dumpInstallPermissionsLPr(pw, prefix, permissionNames, permissionsState); for (int userId : UserManagerService.getInstance().getUserIds()) { final int[] gids = permissionsState.computeGids(userId); List<PermissionState> permissions = permissionsState .getRuntimePermissionStates(userId); final List<PermissionState> permissions = permissionsState.getRuntimePermissionStates(userId); if (!ArrayUtils.isEmpty(gids) || !permissions.isEmpty()) { pw.print(prefix); pw.print("User "); pw.print(userId); pw.println(": "); dumpGidsLPr(pw, prefix + " ", gids); dumpRuntimePermissionsLPr(pw, prefix + " ", permissionNames, permissions, packageName != null); dumpRuntimePermissionsLPr(pw, prefix + " ", permissionNames, permissions, packageName != null); } } } else { Loading