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

Commit a17fe9cc authored by Todd Kennedy's avatar Todd Kennedy Committed by android-build-merger
Browse files

Merge "Add command to retrieve the instant app resolver" into oc-dev

am: 2a347341

Change-Id: I928a7c6ecf81163350fe42ea1669f454710dd1b7
parents 6400a4a8 2a347341
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -623,6 +623,8 @@ interface IPackageManager {


    void deletePreloadsFileCache();
    void deletePreloadsFileCache();


    ComponentName getInstantAppResolverComponent();

    ComponentName getInstantAppResolverSettingsComponent();
    ComponentName getInstantAppResolverSettingsComponent();


    ComponentName getInstantAppInstallerComponent();
    ComponentName getInstantAppInstallerComponent();
+11 −0
Original line number Original line Diff line number Diff line
@@ -3185,6 +3185,17 @@ public class PackageManagerService extends IPackageManager.Stub
        return null;
        return null;
    }
    }
    @Override
    public @Nullable ComponentName getInstantAppResolverComponent() {
        synchronized (mPackages) {
            final Pair<ComponentName, String> instantAppResolver = getInstantAppResolverLPr();
            if (instantAppResolver == null) {
                return null;
            }
            return instantAppResolver.first;
        }
    }
    private @Nullable Pair<ComponentName, String> getInstantAppResolverLPr() {
    private @Nullable Pair<ComponentName, String> getInstantAppResolverLPr() {
        final String[] packageArray =
        final String[] packageArray =
                mContext.getResources().getStringArray(R.array.config_ephemeralResolverPackage);
                mContext.getResources().getStringArray(R.array.config_ephemeralResolverPackage);
+17 −0
Original line number Original line Diff line number Diff line
@@ -148,6 +148,8 @@ class PackageManagerShellCommand extends ShellCommand {
                    return runSetHomeActivity();
                    return runSetHomeActivity();
                case "get-privapp-permissions":
                case "get-privapp-permissions":
                    return runGetPrivappPermissions();
                    return runGetPrivappPermissions();
                case "get-instantapp-resolver":
                    return runGetInstantAppResolver();
                case "has-feature":
                case "has-feature":
                    return runHasFeature();
                    return runHasFeature();
                default:
                default:
@@ -1272,6 +1274,21 @@ class PackageManagerShellCommand extends ShellCommand {
        return 0;
        return 0;
    }
    }


    private int runGetInstantAppResolver() {
        final PrintWriter pw = getOutPrintWriter();
        try {
            final ComponentName instantAppsResolver = mInterface.getInstantAppResolverComponent();
            if (instantAppsResolver == null) {
                return 1;
            }
            pw.println(instantAppsResolver.flattenToString());
            return 0;
        } catch (Exception e) {
            pw.println(e.toString());
            return 1;
        }
    }

    private int runHasFeature() {
    private int runHasFeature() {
        final PrintWriter err = getErrPrintWriter();
        final PrintWriter err = getErrPrintWriter();
        final String featureName = getNextArg();
        final String featureName = getNextArg();