Loading core/java/android/app/ApplicationPackageManager.java +114 −44 Original line number Diff line number Diff line Loading @@ -272,13 +272,18 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<PermissionInfo> queryPermissionsByGroup(String group, int flags) throws NameNotFoundException { try { List<PermissionInfo> pi = mPM.queryPermissionsByGroup(group, flags).getList(); ParceledListSlice<PermissionInfo> parceledList = mPM.queryPermissionsByGroup(group, flags); if (parceledList != null) { List<PermissionInfo> pi = parceledList.getList(); if (pi != null) { return pi; } } } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -302,9 +307,15 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<PermissionGroupInfo> getAllPermissionGroups(int flags) { try { return mPM.getAllPermissionGroups(flags).getList(); ParceledListSlice<PermissionGroupInfo> parceledList = mPM.getAllPermissionGroups(flags); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -439,9 +450,15 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public FeatureInfo[] getSystemAvailableFeatures() { try { final List<FeatureInfo> list = mPM.getSystemAvailableFeatures().getList(); ParceledListSlice<FeatureInfo> parceledList = mPM.getSystemAvailableFeatures(); if (parceledList == null) { return new FeatureInfo[0]; } final List<FeatureInfo> list = parceledList.getList(); final FeatureInfo[] res = new FeatureInfo[list.size()]; for (int i = 0; i < res.length; i++) { res[i] = list.get(i); Loading Loading @@ -636,10 +653,15 @@ public class ApplicationPackageManager extends PackageManager { /** @hide */ @Override @SuppressWarnings("unchecked") public List<PackageInfo> getInstalledPackagesAsUser(int flags, int userId) { try { ParceledListSlice<PackageInfo> slice = mPM.getInstalledPackages(flags, userId); return slice.getList(); ParceledListSlice<PackageInfo> parceledList = mPM.getInstalledPackages(flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -651,9 +673,12 @@ public class ApplicationPackageManager extends PackageManager { String[] permissions, int flags) { final int userId = mContext.getUserId(); try { ParceledListSlice<PackageInfo> slice = mPM.getPackagesHoldingPermissions( permissions, flags, userId); return slice.getList(); ParceledListSlice<PackageInfo> parceledList = mPM.getPackagesHoldingPermissions(permissions, flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -664,8 +689,12 @@ public class ApplicationPackageManager extends PackageManager { public List<ApplicationInfo> getInstalledApplications(int flags) { final int userId = mContext.getUserId(); try { ParceledListSlice<ApplicationInfo> slice = mPM.getInstalledApplications(flags, userId); return slice.getList(); ParceledListSlice<ApplicationInfo> parceledList = mPM.getInstalledApplications(flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -770,20 +799,25 @@ public class ApplicationPackageManager extends PackageManager { /** @hide Same as above but for a specific user */ @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentActivities( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentActivities(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentActivityOptions( ComponentName caller, Intent[] specifics, Intent intent, int flags) { Loading @@ -807,10 +841,13 @@ public class ApplicationPackageManager extends PackageManager { } try { return mPM .queryIntentActivityOptions(caller, specifics, specificTypes, intent, intent.resolveTypeIfNeeded(resolver), flags, mContext.getUserId()) .getList(); ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentActivityOptions(caller, specifics, specificTypes, intent, intent.resolveTypeIfNeeded(resolver), flags, mContext.getUserId()); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -820,13 +857,17 @@ public class ApplicationPackageManager extends PackageManager { * @hide */ @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryBroadcastReceiversAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentReceivers( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentReceivers(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -851,13 +892,17 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentServicesAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentServices( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentServices(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -869,12 +914,18 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentContentProvidersAsUser( Intent intent, int flags, int userId) { try { return mPM.queryIntentContentProviders(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId) .getList(); ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentContentProviders(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -901,12 +952,13 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) { try { ParceledListSlice<ProviderInfo> slice = mPM.queryContentProviders(processName, uid, flags); return slice != null ? slice.getList() : null; ParceledListSlice<ProviderInfo> slice = mPM.queryContentProviders(processName, uid, flags); return slice != null ? slice.getList() : Collections.<ProviderInfo>emptyList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -930,10 +982,16 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<InstrumentationInfo> queryInstrumentation( String targetPackage, int flags) { try { return mPM.queryInstrumentation(targetPackage, flags).getList(); ParceledListSlice<InstrumentationInfo> parceledList = mPM.queryInstrumentation(targetPackage, flags); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -1575,18 +1633,30 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<IntentFilterVerificationInfo> getIntentFilterVerifications(String packageName) { try { return mPM.getIntentFilterVerifications(packageName).getList(); ParceledListSlice<IntentFilterVerificationInfo> parceledList = mPM.getIntentFilterVerifications(packageName); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } @Override @SuppressWarnings("unchecked") public List<IntentFilter> getAllIntentFilters(String packageName) { try { return mPM.getAllIntentFilters(packageName).getList(); ParceledListSlice<IntentFilter> parceledList = mPM.getAllIntentFilters(packageName); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading
core/java/android/app/ApplicationPackageManager.java +114 −44 Original line number Diff line number Diff line Loading @@ -272,13 +272,18 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<PermissionInfo> queryPermissionsByGroup(String group, int flags) throws NameNotFoundException { try { List<PermissionInfo> pi = mPM.queryPermissionsByGroup(group, flags).getList(); ParceledListSlice<PermissionInfo> parceledList = mPM.queryPermissionsByGroup(group, flags); if (parceledList != null) { List<PermissionInfo> pi = parceledList.getList(); if (pi != null) { return pi; } } } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -302,9 +307,15 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<PermissionGroupInfo> getAllPermissionGroups(int flags) { try { return mPM.getAllPermissionGroups(flags).getList(); ParceledListSlice<PermissionGroupInfo> parceledList = mPM.getAllPermissionGroups(flags); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -439,9 +450,15 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public FeatureInfo[] getSystemAvailableFeatures() { try { final List<FeatureInfo> list = mPM.getSystemAvailableFeatures().getList(); ParceledListSlice<FeatureInfo> parceledList = mPM.getSystemAvailableFeatures(); if (parceledList == null) { return new FeatureInfo[0]; } final List<FeatureInfo> list = parceledList.getList(); final FeatureInfo[] res = new FeatureInfo[list.size()]; for (int i = 0; i < res.length; i++) { res[i] = list.get(i); Loading Loading @@ -636,10 +653,15 @@ public class ApplicationPackageManager extends PackageManager { /** @hide */ @Override @SuppressWarnings("unchecked") public List<PackageInfo> getInstalledPackagesAsUser(int flags, int userId) { try { ParceledListSlice<PackageInfo> slice = mPM.getInstalledPackages(flags, userId); return slice.getList(); ParceledListSlice<PackageInfo> parceledList = mPM.getInstalledPackages(flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -651,9 +673,12 @@ public class ApplicationPackageManager extends PackageManager { String[] permissions, int flags) { final int userId = mContext.getUserId(); try { ParceledListSlice<PackageInfo> slice = mPM.getPackagesHoldingPermissions( permissions, flags, userId); return slice.getList(); ParceledListSlice<PackageInfo> parceledList = mPM.getPackagesHoldingPermissions(permissions, flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -664,8 +689,12 @@ public class ApplicationPackageManager extends PackageManager { public List<ApplicationInfo> getInstalledApplications(int flags) { final int userId = mContext.getUserId(); try { ParceledListSlice<ApplicationInfo> slice = mPM.getInstalledApplications(flags, userId); return slice.getList(); ParceledListSlice<ApplicationInfo> parceledList = mPM.getInstalledApplications(flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -770,20 +799,25 @@ public class ApplicationPackageManager extends PackageManager { /** @hide Same as above but for a specific user */ @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentActivities( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentActivities(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentActivityOptions( ComponentName caller, Intent[] specifics, Intent intent, int flags) { Loading @@ -807,10 +841,13 @@ public class ApplicationPackageManager extends PackageManager { } try { return mPM .queryIntentActivityOptions(caller, specifics, specificTypes, intent, intent.resolveTypeIfNeeded(resolver), flags, mContext.getUserId()) .getList(); ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentActivityOptions(caller, specifics, specificTypes, intent, intent.resolveTypeIfNeeded(resolver), flags, mContext.getUserId()); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -820,13 +857,17 @@ public class ApplicationPackageManager extends PackageManager { * @hide */ @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryBroadcastReceiversAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentReceivers( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentReceivers(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -851,13 +892,17 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentServicesAsUser(Intent intent, int flags, int userId) { try { return mPM.queryIntentServices( intent, ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentServices(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId).getList(); flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -869,12 +914,18 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ResolveInfo> queryIntentContentProvidersAsUser( Intent intent, int flags, int userId) { try { return mPM.queryIntentContentProviders(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId) .getList(); ParceledListSlice<ResolveInfo> parceledList = mPM.queryIntentContentProviders(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), flags, userId); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -901,12 +952,13 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<ProviderInfo> queryContentProviders(String processName, int uid, int flags) { try { ParceledListSlice<ProviderInfo> slice = mPM.queryContentProviders(processName, uid, flags); return slice != null ? slice.getList() : null; ParceledListSlice<ProviderInfo> slice = mPM.queryContentProviders(processName, uid, flags); return slice != null ? slice.getList() : Collections.<ProviderInfo>emptyList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading @@ -930,10 +982,16 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<InstrumentationInfo> queryInstrumentation( String targetPackage, int flags) { try { return mPM.queryInstrumentation(targetPackage, flags).getList(); ParceledListSlice<InstrumentationInfo> parceledList = mPM.queryInstrumentation(targetPackage, flags); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading Loading @@ -1575,18 +1633,30 @@ public class ApplicationPackageManager extends PackageManager { } @Override @SuppressWarnings("unchecked") public List<IntentFilterVerificationInfo> getIntentFilterVerifications(String packageName) { try { return mPM.getIntentFilterVerifications(packageName).getList(); ParceledListSlice<IntentFilterVerificationInfo> parceledList = mPM.getIntentFilterVerifications(packageName); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } } @Override @SuppressWarnings("unchecked") public List<IntentFilter> getAllIntentFilters(String packageName) { try { return mPM.getAllIntentFilters(packageName).getList(); ParceledListSlice<IntentFilter> parceledList = mPM.getAllIntentFilters(packageName); if (parceledList == null) { return Collections.emptyList(); } return parceledList.getList(); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } Loading