diff options
| author | 2017-04-19 12:13:51 -0700 | |
|---|---|---|
| committer | 2017-04-19 12:13:51 -0700 | |
| commit | e61b60115f3b08535ebc94e57b62ddd8a3f7de0f (patch) | |
| tree | 89643805ed6486e8f01e982f6ec8be8fda8108a5 | |
| parent | 5b06dbd12bcd28fbc051c88c3ea7f31bcf20d1f8 (diff) | |
Allow verifier to be optional
Change-Id: Ibf01e5283b744f7745e92523787abb3d31a2c813
Fixes: 37412895
Test: Manual; disable verifier and notice that the device doesn't boot loop
| -rw-r--r-- | services/core/java/com/android/server/pm/PackageManagerService.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index e79f46b4f3be..65c71d7652d2 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -2804,8 +2804,12 @@ public class PackageManagerService extends IPackageManager.Stub { mRequiredInstallerPackage = getRequiredInstallerLPr(); mRequiredUninstallerPackage = getRequiredUninstallerLPr(); mIntentFilterVerifierComponent = getIntentFilterVerifierComponentNameLPr(); - mIntentFilterVerifier = new IntentVerifierProxy(mContext, - mIntentFilterVerifierComponent); + if (mIntentFilterVerifierComponent != null) { + mIntentFilterVerifier = new IntentVerifierProxy(mContext, + mIntentFilterVerifierComponent); + } else { + mIntentFilterVerifier = null; + } mServicesSystemSharedLibraryPackageName = getRequiredSharedLibraryLPr( PackageManager.SYSTEM_SHARED_LIBRARY_SERVICES, SharedLibraryInfo.VERSION_UNDEFINED); @@ -3045,9 +3049,9 @@ public class PackageManagerService extends IPackageManager.Stub { if (best != null) { return best.getComponentInfo().getComponentName(); - } else { - throw new RuntimeException("There must be at least one intent filter verifier"); } + Slog.w(TAG, "Intent filter verifier not found"); + return null; } private @Nullable Pair<ComponentName, String> getInstantAppResolverLPr() { |