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

This commit is contained in:
TreeHugger Robot
2017-05-12 23:11:46 +00:00
committed by Android (Google) Code Review
3 changed files with 30 additions and 0 deletions

View File

@@ -623,6 +623,8 @@ interface IPackageManager {
void deletePreloadsFileCache();
ComponentName getInstantAppResolverComponent();
ComponentName getInstantAppResolverSettingsComponent();
ComponentName getInstantAppInstallerComponent();

View File

@@ -3185,6 +3185,17 @@ public class PackageManagerService extends IPackageManager.Stub
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() {
final String[] packageArray =
mContext.getResources().getStringArray(R.array.config_ephemeralResolverPackage);

View File

@@ -148,6 +148,8 @@ class PackageManagerShellCommand extends ShellCommand {
return runSetHomeActivity();
case "get-privapp-permissions":
return runGetPrivappPermissions();
case "get-instantapp-resolver":
return runGetInstantAppResolver();
case "has-feature":
return runHasFeature();
default:
@@ -1272,6 +1274,21 @@ class PackageManagerShellCommand extends ShellCommand {
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() {
final PrintWriter err = getErrPrintWriter();
final String featureName = getNextArg();