diff options
| author | Winson Chiu <chiuwinson@google.com> | 2020-04-17 21:04:18 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-04-17 21:04:18 +0000 |
| commit | c7cd73aa001f0a721b841b72d545505d6bbdc062 (patch) | |
| tree | 40b49908fb4683faa8e1c05801e53c4b6c29c4e6 /core/java | |
| parent | b31a5f43d0cae4f590efe7ef436b21cf8d2a2feb (diff) | |
| parent | c7f8e75806772e6b2414f5ee437caca6882bf5d4 (diff) | |
Merge "Optimization: remove duplicated flags computations for getInstalledPackages" into rvc-dev
Diffstat (limited to 'core/java')
3 files changed, 12 insertions, 4 deletions
diff --git a/core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java b/core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java index 9a1f7c9e80c5..216b3bb5de8e 100644 --- a/core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java +++ b/core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java @@ -350,9 +350,6 @@ public class PackageInfoWithoutStateUtils { // TODO(b/135203078): Consolidate the data directory logic, remove initForUser ai.initForUser(userId); - ai.flags = appInfoFlags(pkg); - ai.privateFlags = appInfoPrivateFlags(pkg); - if ((flags & PackageManager.GET_META_DATA) == 0) { ai.metaData = null; } diff --git a/core/java/android/content/pm/parsing/ParsingPackageImpl.java b/core/java/android/content/pm/parsing/ParsingPackageImpl.java index 1a1395ca7e9e..f932bc250e28 100644 --- a/core/java/android/content/pm/parsing/ParsingPackageImpl.java +++ b/core/java/android/content/pm/parsing/ParsingPackageImpl.java @@ -850,9 +850,15 @@ public class ParsingPackageImpl implements ParsingPackage, Parcelable { @Deprecated @Override public ApplicationInfo toAppInfoWithoutState() { - ApplicationInfo appInfo = new ApplicationInfo(); + ApplicationInfo appInfo = toAppInfoWithoutStateWithoutFlags(); appInfo.flags = PackageInfoWithoutStateUtils.appInfoFlags(this); appInfo.privateFlags = PackageInfoWithoutStateUtils.appInfoPrivateFlags(this); + return appInfo; + } + + @Override + public ApplicationInfo toAppInfoWithoutStateWithoutFlags() { + ApplicationInfo appInfo = new ApplicationInfo(); appInfo.appComponentFactory = appComponentFactory; appInfo.backupAgentName = backupAgentName; diff --git a/core/java/android/content/pm/parsing/ParsingPackageRead.java b/core/java/android/content/pm/parsing/ParsingPackageRead.java index 1ded8d40c727..5b53c18b820c 100644 --- a/core/java/android/content/pm/parsing/ParsingPackageRead.java +++ b/core/java/android/content/pm/parsing/ParsingPackageRead.java @@ -858,4 +858,9 @@ public interface ParsingPackageRead extends Parcelable { // TODO(b/135203078): Hide and enforce going through PackageInfoUtils ApplicationInfo toAppInfoWithoutState(); + + /** + * same as toAppInfoWithoutState except without flag computation. + */ + ApplicationInfo toAppInfoWithoutStateWithoutFlags(); } |
