diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2018-02-09 18:11:47 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-02-09 18:11:47 +0000 |
commit | 0408b7834d1339c72ab516a068c93f84a3c513cf (patch) | |
tree | f8aa228b92653a852a7aa9e01c8ba3415f8dd2d7 /src | |
parent | f43df158e5b823017d44bc06830bf0d3b8d4f161 (diff) | |
parent | 03bf3596ab973dc4227490de1e53f4ba389fcf50 (diff) | |
download | android_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.tar.gz android_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.tar.bz2 android_packages_apps_PackageInstaller-0408b7834d1339c72ab516a068c93f84a3c513cf.zip |
Merge "Fixing NPE when there is no DownloadProvider"
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/packageinstaller/InstallStart.java | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/com/android/packageinstaller/InstallStart.java b/src/com/android/packageinstaller/InstallStart.java index 5c9ad85c..d06b6f55 100644 --- a/src/com/android/packageinstaller/InstallStart.java +++ b/src/com/android/packageinstaller/InstallStart.java @@ -29,6 +29,7 @@ import android.content.pm.ApplicationInfo; import android.content.pm.IPackageManager; import android.content.pm.PackageInstaller; import android.content.pm.PackageManager; +import android.content.pm.ProviderInfo; import android.net.Uri; import android.os.Build; import android.os.Bundle; @@ -208,18 +209,14 @@ public class InstallStart extends Activity { } private boolean isSystemDownloadsProvider(int uid) { - final String downloadProviderPackage = getPackageManager().resolveContentProvider( - DOWNLOADS_AUTHORITY, 0).getComponentName().getPackageName(); + final ProviderInfo downloadProviderPackage = getPackageManager().resolveContentProvider( + DOWNLOADS_AUTHORITY, 0); if (downloadProviderPackage == null) { + // There seems to be no currently enabled downloads provider on the system. return false; } - try { - ApplicationInfo applicationInfo = getPackageManager().getApplicationInfo( - downloadProviderPackage, 0); - return (applicationInfo.isSystemApp() && uid == applicationInfo.uid); - } catch (PackageManager.NameNotFoundException ex) { - return false; - } + final ApplicationInfo appInfo = downloadProviderPackage.applicationInfo; + return (appInfo.isSystemApp() && uid == appInfo.uid); } private IActivityManager getIActivityManager() { |