Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 922f2dfa authored by Amith Yamasani's avatar Amith Yamasani
Browse files

Add a pm unstop shell command

This will mark the app as no longer stopped

Bug: 319270476
Test: adb shell pm unstop <package>
Change-Id: Idb08b5f2412ee9c2e4732d56fe16c31cd47249ac
parent 2ecde8de
Loading
Loading
Loading
Loading
+24 −0
Original line number Original line Diff line number Diff line
@@ -297,6 +297,8 @@ class PackageManagerShellCommand extends ShellCommand {
                    return runSetHiddenSetting(true);
                    return runSetHiddenSetting(true);
                case "unhide":
                case "unhide":
                    return runSetHiddenSetting(false);
                    return runSetHiddenSetting(false);
                case "unstop":
                    return runSetStoppedState(false);
                case "suspend":
                case "suspend":
                    return runSuspend(true, 0);
                    return runSuspend(true, 0);
                case "suspend-quarantine":
                case "suspend-quarantine":
@@ -2662,6 +2664,26 @@ class PackageManagerShellCommand extends ShellCommand {
        return 0;
        return 0;
    }
    }


    private int runSetStoppedState(boolean state) throws RemoteException {
        int userId = UserHandle.USER_SYSTEM;
        String option = getNextOption();
        if (option != null && option.equals("--user")) {
            userId = UserHandle.parseUserArg(getNextArgRequired());
        }

        String pkg = getNextArg();
        if (pkg == null) {
            getErrPrintWriter().println("Error: no package specified");
            return 1;
        }
        final int translatedUserId =
                translateUserId(userId, UserHandle.USER_NULL, "runSetStoppedState");
        mInterface.setPackageStoppedState(pkg, state, userId);
        getOutPrintWriter().println("Package " + pkg + " new stopped state: "
                + mInterface.isPackageStoppedForUser(pkg, translatedUserId));
        return 0;
    }

    private int runSetDistractingRestriction() {
    private int runSetDistractingRestriction() {
        final PrintWriter pw = getOutPrintWriter();
        final PrintWriter pw = getOutPrintWriter();
        int userId = UserHandle.USER_SYSTEM;
        int userId = UserHandle.USER_SYSTEM;
@@ -4934,6 +4956,8 @@ class PackageManagerShellCommand extends ShellCommand {
        pw.println("  hide [--user USER_ID] PACKAGE_OR_COMPONENT");
        pw.println("  hide [--user USER_ID] PACKAGE_OR_COMPONENT");
        pw.println("  unhide [--user USER_ID] PACKAGE_OR_COMPONENT");
        pw.println("  unhide [--user USER_ID] PACKAGE_OR_COMPONENT");
        pw.println("");
        pw.println("");
        pw.println("  unstop [--user USER_ID] PACKAGE");
        pw.println("");
        pw.println("  suspend [--user USER_ID] PACKAGE [PACKAGE...]");
        pw.println("  suspend [--user USER_ID] PACKAGE [PACKAGE...]");
        pw.println("    Suspends the specified package(s) (as user).");
        pw.println("    Suspends the specified package(s) (as user).");
        pw.println("");
        pw.println("");