Merge "Support showing initial non stopped system packages" into udc-dev am: 9a5003dbc8

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22963922

Change-Id: Ie1e88114285c6c0131e03370ed92b3e5a5563982
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Omar Eissa
2023-05-03 10:22:07 +00:00
committed by Automerger Merge Worker
3 changed files with 25 additions and 0 deletions

View File

@@ -502,6 +502,8 @@ interface IPackageManager {
boolean hasSystemFeature(String name, int version);
List<String> getInitialNonStoppedSystemPackages();
void enterSafeMode();
@UnsupportedAppUsage
boolean isSafeMode();

View File

@@ -5257,6 +5257,12 @@ public class PackageManagerService implements PackageSender, TestUtilityService
return new ParceledListSlice<>(res);
}
@Override
public @NonNull List<String> getInitialNonStoppedSystemPackages() {
return mInitialNonStoppedSystemPackages != null
? new ArrayList<>(mInitialNonStoppedSystemPackages) : new ArrayList<>();
}
@Override
public String[] getUnsuspendablePackagesForUser(String[] packageNames, int userId) {
Objects.requireNonNull(packageNames, "packageNames cannot be null");

View File

@@ -782,6 +782,8 @@ class PackageManagerShellCommand extends ShellCommand {
getInFileDescriptor(), getOutFileDescriptor(), getErrFileDescriptor(),
new String[] { "list" }, getShellCallback(), adoptResultReceiver());
return 0;
case "initial-non-stopped-system-packages":
return runListInitialNonStoppedSystemPackages();
}
pw.println("Error: unknown list type '" + type + "'");
return -1;
@@ -794,6 +796,21 @@ class PackageManagerShellCommand extends ShellCommand {
return 0;
}
private int runListInitialNonStoppedSystemPackages() throws RemoteException {
final PrintWriter pw = getOutPrintWriter();
final List<String> list = mInterface.getInitialNonStoppedSystemPackages();
Collections.sort(list);
for (String pkgName : list) {
pw.print("package:");
pw.print(pkgName);
pw.println();
}
return 0;
}
private int runListFeatures() throws RemoteException {
final PrintWriter pw = getOutPrintWriter();
final List<FeatureInfo> list = mInterface.getSystemAvailableFeatures().getList();