Minor performance improvement when filtering intents by package.
Don't consider the activities that have no intent filters.
This commit is contained in:
@@ -2900,8 +2900,13 @@ class PackageManagerService extends IPackageManager.Stub {
|
|||||||
int N = packageActivities.size();
|
int N = packageActivities.size();
|
||||||
ArrayList<ArrayList<PackageParser.ActivityIntentInfo>> listCut =
|
ArrayList<ArrayList<PackageParser.ActivityIntentInfo>> listCut =
|
||||||
new ArrayList<ArrayList<PackageParser.ActivityIntentInfo>>(N);
|
new ArrayList<ArrayList<PackageParser.ActivityIntentInfo>>(N);
|
||||||
|
|
||||||
|
ArrayList<PackageParser.ActivityIntentInfo> intentFilters;
|
||||||
for (int i = 0; i < N; ++i) {
|
for (int i = 0; i < N; ++i) {
|
||||||
listCut.add(packageActivities.get(i).intents);
|
intentFilters = packageActivities.get(i).intents;
|
||||||
|
if (intentFilters != null && intentFilters.size() > 0) {
|
||||||
|
listCut.add(intentFilters);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return super.queryIntentFromList(intent, resolvedType, defaultOnly, listCut);
|
return super.queryIntentFromList(intent, resolvedType, defaultOnly, listCut);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user