Loading core/java/android/app/ApplicationPackageManager.java +2 −2 Original line number Diff line number Diff line Loading @@ -79,7 +79,7 @@ import android.content.pm.parsing.ParsingPackageUtils; import android.content.pm.parsing.result.ParseInput; import android.content.pm.parsing.result.ParseResult; import android.content.pm.parsing.result.ParseTypeImpl; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.XmlResourceParser; Loading Loading @@ -2130,7 +2130,7 @@ public class ApplicationPackageManager extends PackageManager { return null; } return PackageInfoWithoutStateUtils.generate(result.getResult(), null, flags, 0, 0, null, PackageUserState.DEFAULT, UserHandle.getCallingUserId()); FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId()); } @Override Loading core/java/android/content/pm/PackageParser.java +16 −17 Original line number Diff line number Diff line Loading @@ -56,9 +56,8 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.pm.overlay.OverlayPaths; import android.content.pm.parsing.ParsingPackageUtils; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.pm.pkg.PackageUserStateUtils; import android.content.pm.split.SplitAssetLoader; import android.content.pm.parsing.result.ParseResult; import android.content.pm.parsing.result.ParseTypeImpl; import android.content.res.ApkAssets; Loading Loading @@ -645,7 +644,7 @@ public class PackageParser { * explicitly wanted all uninstalled and hidden packages as well. * @param appInfo The applicationInfo of the app being checked. */ private static boolean checkUseInstalledOrHidden(int flags, PackageUserState state, private static boolean checkUseInstalledOrHidden(int flags, FrameworkPackageUserState state, ApplicationInfo appInfo) { // Returns false if the package is hidden system app until installed. if ((flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) == 0 Loading @@ -662,7 +661,7 @@ public class PackageParser { || (flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) != 0)); } public static boolean isAvailable(PackageUserState state) { public static boolean isAvailable(FrameworkPackageUserState state) { return checkUseInstalledOrHidden(0, state, null); } Loading @@ -675,7 +674,7 @@ public class PackageParser { @UnsupportedAppUsage public static PackageInfo generatePackageInfo(PackageParser.Package p, int[] gids, int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state) { Set<String> grantedPermissions, FrameworkPackageUserState state) { return generatePackageInfo(p, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, UserHandle.getCallingUserId()); Loading @@ -684,7 +683,7 @@ public class PackageParser { @UnsupportedAppUsage public static PackageInfo generatePackageInfo(PackageParser.Package p, int[] gids, int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { return generatePackageInfo(p, null, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, userId); Loading @@ -701,12 +700,12 @@ public class PackageParser { public static PackageInfo generatePackageInfo( PackageParser.Package pkg, ApexInfo apexInfo, int flags) { return generatePackageInfo(pkg, apexInfo, EmptyArray.INT, flags, 0, 0, Collections.emptySet(), PackageUserState.DEFAULT, UserHandle.getCallingUserId()); Collections.emptySet(), FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId()); } private static PackageInfo generatePackageInfo(PackageParser.Package p, ApexInfo apexInfo, int gids[], int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { if (!checkUseInstalledOrHidden(flags, state, p.applicationInfo) || !p.isMatch(flags)) { return null; } Loading Loading @@ -7883,7 +7882,7 @@ public class PackageParser { } private static boolean copyNeeded(int flags, Package p, PackageUserState state, Bundle metaData, int userId) { FrameworkPackageUserState state, Bundle metaData, int userId) { if (userId != UserHandle.USER_SYSTEM) { // We always need to copy for other users, since we need // to fix up the uid. Loading Loading @@ -7929,12 +7928,12 @@ public class PackageParser { @UnsupportedAppUsage public static ApplicationInfo generateApplicationInfo(Package p, int flags, PackageUserState state) { FrameworkPackageUserState state) { return generateApplicationInfo(p, flags, state, UserHandle.getCallingUserId()); } private static void updateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state) { FrameworkPackageUserState state) { // CompatibilityMode is global state. if (!sCompatibilityModeEnabled) { ai.disableCompatibilityMode(); Loading Loading @@ -7989,7 +7988,7 @@ public class PackageParser { @UnsupportedAppUsage public static ApplicationInfo generateApplicationInfo(Package p, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(flags, state, p.applicationInfo) || !p.isMatch(flags)) { return null; Loading Loading @@ -8029,7 +8028,7 @@ public class PackageParser { } public static ApplicationInfo generateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (ai == null) return null; if (!checkUseInstalledOrHidden(flags, state, ai)) { return null; Loading Loading @@ -8188,7 +8187,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ActivityInfo generateActivityInfo(Activity a, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (a == null) return null; if (!checkUseInstalledOrHidden(flags, state, a.owner.applicationInfo)) { return null; Loading @@ -8205,7 +8204,7 @@ public class PackageParser { } public static final ActivityInfo generateActivityInfo(ActivityInfo ai, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (ai == null) return null; if (!checkUseInstalledOrHidden(flags, state, ai.applicationInfo)) { return null; Loading Loading @@ -8280,7 +8279,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ServiceInfo generateServiceInfo(Service s, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (s == null) return null; if (!checkUseInstalledOrHidden(flags, state, s.owner.applicationInfo)) { return null; Loading Loading @@ -8378,7 +8377,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ProviderInfo generateProviderInfo(Provider p, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(flags, state, p.owner.applicationInfo)) { return null; Loading core/java/android/content/pm/SELinuxUtil.java +2 −2 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ package android.content.pm; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; /** * Utility methods that need to be used in application space. Loading @@ -31,7 +31,7 @@ public final class SELinuxUtil { public static final String COMPLETE_STR = ":complete"; /** @hide */ public static String getSeinfoUser(PackageUserState userState) { public static String getSeinfoUser(FrameworkPackageUserState userState) { if (userState.isInstantApp()) { return INSTANT_APP_STR + COMPLETE_STR; } Loading core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java +25 −25 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ import android.content.pm.parsing.component.ParsedPermissionGroup; import android.content.pm.parsing.component.ParsedProvider; import android.content.pm.parsing.component.ParsedService; import android.content.pm.parsing.component.ParsedUsesPermission; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.pm.pkg.PackageUserStateUtils; import android.os.Environment; import android.os.UserHandle; Loading @@ -77,7 +77,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generate(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { return generateWithComponents(pkg, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, userId, null); } Loading @@ -85,13 +85,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generate(ParsingPackageRead pkg, ApexInfo apexInfo, int flags) { return generateWithComponents(pkg, EmptyArray.INT, flags, 0, 0, Collections.emptySet(), PackageUserState.DEFAULT, UserHandle.getCallingUserId(), apexInfo); FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId(), apexInfo); } @Nullable private static PackageInfo generateWithComponents(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo) { ApplicationInfo applicationInfo = generateApplicationInfo(pkg, flags, state, userId); if (applicationInfo == null) { Loading Loading @@ -191,7 +191,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generateWithoutComponents(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo, @NonNull ApplicationInfo applicationInfo) { if (!checkUseInstalled(pkg, state, flags)) { return null; Loading @@ -206,12 +206,12 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateWithoutComponents(ParsingPackageRead, int[], int, long, long, Set, * PackageUserState, int, ApexInfo, ApplicationInfo)}. * FrameworkPackageUserState, int, ApexInfo, ApplicationInfo)}. */ @NonNull public static PackageInfo generateWithoutComponentsUnchecked(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo, @NonNull ApplicationInfo applicationInfo) { PackageInfo pi = new PackageInfo(); pi.packageName = pkg.getPackageName(); Loading Loading @@ -365,7 +365,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ApplicationInfo generateApplicationInfo(ParsingPackageRead pkg, @PackageManager.ApplicationInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ApplicationInfoFlags int flags, FrameworkPackageUserState state, int userId) { if (pkg == null) { return null; } Loading @@ -382,7 +382,7 @@ public class PackageInfoWithoutStateUtils { * This bypasses critical checks that are necessary for usage with data passed outside of system * server. * <p> * Prefer {@link #generateApplicationInfo(ParsingPackageRead, int, PackageUserState, int)}. * Prefer {@link #generateApplicationInfo(ParsingPackageRead, int, FrameworkPackageUserState, int)}. * * @param assignUserFields whether to fill the returned {@link ApplicationInfo} with user * specific fields. This can be skipped when building from a system Loading @@ -392,7 +392,7 @@ public class PackageInfoWithoutStateUtils { */ @NonNull public static ApplicationInfo generateApplicationInfoUnchecked(@NonNull ParsingPackageRead pkg, @PackageManager.ApplicationInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ApplicationInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId, boolean assignUserFields) { // Make shallow copy so we can store the metadata/libraries safely ApplicationInfo ai = ((ParsingPackageHidden) pkg).toAppInfoWithoutState(); Loading @@ -407,7 +407,7 @@ public class PackageInfoWithoutStateUtils { } private static void updateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state) { FrameworkPackageUserState state) { if ((flags & PackageManager.GET_META_DATA) == 0) { ai.metaData = null; } Loading Loading @@ -452,7 +452,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ApplicationInfo generateDelegateApplicationInfo(@Nullable ApplicationInfo ai, @PackageManager.ApplicationInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ApplicationInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId) { if (ai == null || !checkUseInstalledOrHidden(flags, state, ai)) { return null; Loading @@ -469,7 +469,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateDelegateActivityInfo(@Nullable ActivityInfo a, @PackageManager.ComponentInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ComponentInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId) { if (a == null || !checkUseInstalledOrHidden(flags, state, a.applicationInfo)) { return null; Loading @@ -484,7 +484,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateActivityInfo(ParsingPackageRead pkg, ParsedActivity a, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (a == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -505,7 +505,7 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateActivityInfo(ParsingPackageRead, ParsedActivity, int, * PackageUserState, ApplicationInfo, int)}. * FrameworkPackageUserState, ApplicationInfo, int)}. */ @NonNull public static ActivityInfo generateActivityInfoUnchecked(@NonNull ParsedActivity a, Loading Loading @@ -550,13 +550,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateActivityInfo(ParsingPackageRead pkg, ParsedActivity a, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateActivityInfo(pkg, a, flags, state, null, userId); } @Nullable public static ServiceInfo generateServiceInfo(ParsingPackageRead pkg, ParsedService s, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (s == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -576,7 +576,7 @@ public class PackageInfoWithoutStateUtils { * This bypasses critical checks that are necessary for usage with data passed outside of system * server. * <p> * Prefer {@link #generateServiceInfo(ParsingPackageRead, ParsedService, int, PackageUserState, * Prefer {@link #generateServiceInfo(ParsingPackageRead, ParsedService, int, FrameworkPackageUserState, * ApplicationInfo, int)}. */ @NonNull Loading @@ -600,13 +600,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ServiceInfo generateServiceInfo(ParsingPackageRead pkg, ParsedService s, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateServiceInfo(pkg, s, flags, state, null, userId); } @Nullable public static ProviderInfo generateProviderInfo(ParsingPackageRead pkg, ParsedProvider p, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (p == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -627,7 +627,7 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateProviderInfo(ParsingPackageRead, ParsedProvider, int, * PackageUserState, ApplicationInfo, int)}. * FrameworkPackageUserState, ApplicationInfo, int)}. */ @NonNull public static ProviderInfo generateProviderInfoUnchecked(@NonNull ParsedProvider p, Loading Loading @@ -661,13 +661,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ProviderInfo generateProviderInfo(ParsingPackageRead pkg, ParsedProvider p, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateProviderInfo(pkg, p, flags, state, null, userId); } /** * @param assignUserFields see {@link #generateApplicationInfoUnchecked(ParsingPackageRead, int, * PackageUserState, int, boolean)} * FrameworkPackageUserState, int, boolean)} */ @Nullable public static InstrumentationInfo generateInstrumentationInfo(ParsedInstrumentation i, Loading Loading @@ -753,7 +753,7 @@ public class PackageInfoWithoutStateUtils { return new Attribution(pa.getTag(), pa.getLabel()); } private static boolean checkUseInstalledOrHidden(int flags, @NonNull PackageUserState state, private static boolean checkUseInstalledOrHidden(int flags, @NonNull FrameworkPackageUserState state, @Nullable ApplicationInfo appInfo) { // Returns false if the package is hidden system app until installed. if ((flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) == 0 Loading Loading @@ -882,7 +882,7 @@ public class PackageInfoWithoutStateUtils { return privateFlagsExt; } private static boolean checkUseInstalled(ParsingPackageRead pkg, PackageUserState state, private static boolean checkUseInstalled(ParsingPackageRead pkg, FrameworkPackageUserState state, @PackageManager.PackageInfoFlags int flags) { // If available for the target user return PackageUserStateUtils.isAvailable(state, flags); Loading core/java/android/content/pm/parsing/PkgWithoutStatePackageInfo.java +5 −4 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.pm.parsing.component.ParsedInstrumentation; import android.content.pm.parsing.component.ParsedPermission; import android.content.pm.parsing.component.ParsedProvider; import android.content.pm.parsing.component.ParsedService; import android.content.pm.pkg.FrameworkPackageUserState; import com.android.internal.R; Loading Loading @@ -81,7 +82,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ActivityInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getActivityInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ActivityInfo * @see PackageInfo#activities Loading Loading @@ -152,7 +153,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ProviderInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getProviderInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ProviderInfo * @see PackageInfo#providers Loading @@ -167,7 +168,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ActivityInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getReceiverInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * Since they share several attributes, receivers are parsed as {@link ParsedActivity}, even * though they represent different functionality. Loading Loading @@ -221,7 +222,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ServiceInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getServiceInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ServiceInfo * @see PackageInfo#services Loading Loading
core/java/android/app/ApplicationPackageManager.java +2 −2 Original line number Diff line number Diff line Loading @@ -79,7 +79,7 @@ import android.content.pm.parsing.ParsingPackageUtils; import android.content.pm.parsing.result.ParseInput; import android.content.pm.parsing.result.ParseResult; import android.content.pm.parsing.result.ParseTypeImpl; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.res.Configuration; import android.content.res.Resources; import android.content.res.XmlResourceParser; Loading Loading @@ -2130,7 +2130,7 @@ public class ApplicationPackageManager extends PackageManager { return null; } return PackageInfoWithoutStateUtils.generate(result.getResult(), null, flags, 0, 0, null, PackageUserState.DEFAULT, UserHandle.getCallingUserId()); FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId()); } @Override Loading
core/java/android/content/pm/PackageParser.java +16 −17 Original line number Diff line number Diff line Loading @@ -56,9 +56,8 @@ import android.content.Intent; import android.content.IntentFilter; import android.content.pm.overlay.OverlayPaths; import android.content.pm.parsing.ParsingPackageUtils; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.pm.pkg.PackageUserStateUtils; import android.content.pm.split.SplitAssetLoader; import android.content.pm.parsing.result.ParseResult; import android.content.pm.parsing.result.ParseTypeImpl; import android.content.res.ApkAssets; Loading Loading @@ -645,7 +644,7 @@ public class PackageParser { * explicitly wanted all uninstalled and hidden packages as well. * @param appInfo The applicationInfo of the app being checked. */ private static boolean checkUseInstalledOrHidden(int flags, PackageUserState state, private static boolean checkUseInstalledOrHidden(int flags, FrameworkPackageUserState state, ApplicationInfo appInfo) { // Returns false if the package is hidden system app until installed. if ((flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) == 0 Loading @@ -662,7 +661,7 @@ public class PackageParser { || (flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) != 0)); } public static boolean isAvailable(PackageUserState state) { public static boolean isAvailable(FrameworkPackageUserState state) { return checkUseInstalledOrHidden(0, state, null); } Loading @@ -675,7 +674,7 @@ public class PackageParser { @UnsupportedAppUsage public static PackageInfo generatePackageInfo(PackageParser.Package p, int[] gids, int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state) { Set<String> grantedPermissions, FrameworkPackageUserState state) { return generatePackageInfo(p, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, UserHandle.getCallingUserId()); Loading @@ -684,7 +683,7 @@ public class PackageParser { @UnsupportedAppUsage public static PackageInfo generatePackageInfo(PackageParser.Package p, int[] gids, int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { return generatePackageInfo(p, null, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, userId); Loading @@ -701,12 +700,12 @@ public class PackageParser { public static PackageInfo generatePackageInfo( PackageParser.Package pkg, ApexInfo apexInfo, int flags) { return generatePackageInfo(pkg, apexInfo, EmptyArray.INT, flags, 0, 0, Collections.emptySet(), PackageUserState.DEFAULT, UserHandle.getCallingUserId()); Collections.emptySet(), FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId()); } private static PackageInfo generatePackageInfo(PackageParser.Package p, ApexInfo apexInfo, int gids[], int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { if (!checkUseInstalledOrHidden(flags, state, p.applicationInfo) || !p.isMatch(flags)) { return null; } Loading Loading @@ -7883,7 +7882,7 @@ public class PackageParser { } private static boolean copyNeeded(int flags, Package p, PackageUserState state, Bundle metaData, int userId) { FrameworkPackageUserState state, Bundle metaData, int userId) { if (userId != UserHandle.USER_SYSTEM) { // We always need to copy for other users, since we need // to fix up the uid. Loading Loading @@ -7929,12 +7928,12 @@ public class PackageParser { @UnsupportedAppUsage public static ApplicationInfo generateApplicationInfo(Package p, int flags, PackageUserState state) { FrameworkPackageUserState state) { return generateApplicationInfo(p, flags, state, UserHandle.getCallingUserId()); } private static void updateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state) { FrameworkPackageUserState state) { // CompatibilityMode is global state. if (!sCompatibilityModeEnabled) { ai.disableCompatibilityMode(); Loading Loading @@ -7989,7 +7988,7 @@ public class PackageParser { @UnsupportedAppUsage public static ApplicationInfo generateApplicationInfo(Package p, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(flags, state, p.applicationInfo) || !p.isMatch(flags)) { return null; Loading Loading @@ -8029,7 +8028,7 @@ public class PackageParser { } public static ApplicationInfo generateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (ai == null) return null; if (!checkUseInstalledOrHidden(flags, state, ai)) { return null; Loading Loading @@ -8188,7 +8187,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ActivityInfo generateActivityInfo(Activity a, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (a == null) return null; if (!checkUseInstalledOrHidden(flags, state, a.owner.applicationInfo)) { return null; Loading @@ -8205,7 +8204,7 @@ public class PackageParser { } public static final ActivityInfo generateActivityInfo(ActivityInfo ai, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (ai == null) return null; if (!checkUseInstalledOrHidden(flags, state, ai.applicationInfo)) { return null; Loading Loading @@ -8280,7 +8279,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ServiceInfo generateServiceInfo(Service s, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (s == null) return null; if (!checkUseInstalledOrHidden(flags, state, s.owner.applicationInfo)) { return null; Loading Loading @@ -8378,7 +8377,7 @@ public class PackageParser { @UnsupportedAppUsage public static final ProviderInfo generateProviderInfo(Provider p, int flags, PackageUserState state, int userId) { FrameworkPackageUserState state, int userId) { if (p == null) return null; if (!checkUseInstalledOrHidden(flags, state, p.owner.applicationInfo)) { return null; Loading
core/java/android/content/pm/SELinuxUtil.java +2 −2 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ package android.content.pm; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; /** * Utility methods that need to be used in application space. Loading @@ -31,7 +31,7 @@ public final class SELinuxUtil { public static final String COMPLETE_STR = ":complete"; /** @hide */ public static String getSeinfoUser(PackageUserState userState) { public static String getSeinfoUser(FrameworkPackageUserState userState) { if (userState.isInstantApp()) { return INSTANT_APP_STR + COMPLETE_STR; } Loading
core/java/android/content/pm/parsing/PackageInfoWithoutStateUtils.java +25 −25 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ import android.content.pm.parsing.component.ParsedPermissionGroup; import android.content.pm.parsing.component.ParsedProvider; import android.content.pm.parsing.component.ParsedService; import android.content.pm.parsing.component.ParsedUsesPermission; import android.content.pm.pkg.PackageUserState; import android.content.pm.pkg.FrameworkPackageUserState; import android.content.pm.pkg.PackageUserStateUtils; import android.os.Environment; import android.os.UserHandle; Loading @@ -77,7 +77,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generate(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId) { Set<String> grantedPermissions, FrameworkPackageUserState state, int userId) { return generateWithComponents(pkg, gids, flags, firstInstallTime, lastUpdateTime, grantedPermissions, state, userId, null); } Loading @@ -85,13 +85,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generate(ParsingPackageRead pkg, ApexInfo apexInfo, int flags) { return generateWithComponents(pkg, EmptyArray.INT, flags, 0, 0, Collections.emptySet(), PackageUserState.DEFAULT, UserHandle.getCallingUserId(), apexInfo); FrameworkPackageUserState.DEFAULT, UserHandle.getCallingUserId(), apexInfo); } @Nullable private static PackageInfo generateWithComponents(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo) { ApplicationInfo applicationInfo = generateApplicationInfo(pkg, flags, state, userId); if (applicationInfo == null) { Loading Loading @@ -191,7 +191,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static PackageInfo generateWithoutComponents(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo, @NonNull ApplicationInfo applicationInfo) { if (!checkUseInstalled(pkg, state, flags)) { return null; Loading @@ -206,12 +206,12 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateWithoutComponents(ParsingPackageRead, int[], int, long, long, Set, * PackageUserState, int, ApexInfo, ApplicationInfo)}. * FrameworkPackageUserState, int, ApexInfo, ApplicationInfo)}. */ @NonNull public static PackageInfo generateWithoutComponentsUnchecked(ParsingPackageRead pkg, int[] gids, @PackageManager.PackageInfoFlags int flags, long firstInstallTime, long lastUpdateTime, Set<String> grantedPermissions, PackageUserState state, int userId, Set<String> grantedPermissions, FrameworkPackageUserState state, int userId, @Nullable ApexInfo apexInfo, @NonNull ApplicationInfo applicationInfo) { PackageInfo pi = new PackageInfo(); pi.packageName = pkg.getPackageName(); Loading Loading @@ -365,7 +365,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ApplicationInfo generateApplicationInfo(ParsingPackageRead pkg, @PackageManager.ApplicationInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ApplicationInfoFlags int flags, FrameworkPackageUserState state, int userId) { if (pkg == null) { return null; } Loading @@ -382,7 +382,7 @@ public class PackageInfoWithoutStateUtils { * This bypasses critical checks that are necessary for usage with data passed outside of system * server. * <p> * Prefer {@link #generateApplicationInfo(ParsingPackageRead, int, PackageUserState, int)}. * Prefer {@link #generateApplicationInfo(ParsingPackageRead, int, FrameworkPackageUserState, int)}. * * @param assignUserFields whether to fill the returned {@link ApplicationInfo} with user * specific fields. This can be skipped when building from a system Loading @@ -392,7 +392,7 @@ public class PackageInfoWithoutStateUtils { */ @NonNull public static ApplicationInfo generateApplicationInfoUnchecked(@NonNull ParsingPackageRead pkg, @PackageManager.ApplicationInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ApplicationInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId, boolean assignUserFields) { // Make shallow copy so we can store the metadata/libraries safely ApplicationInfo ai = ((ParsingPackageHidden) pkg).toAppInfoWithoutState(); Loading @@ -407,7 +407,7 @@ public class PackageInfoWithoutStateUtils { } private static void updateApplicationInfo(ApplicationInfo ai, int flags, PackageUserState state) { FrameworkPackageUserState state) { if ((flags & PackageManager.GET_META_DATA) == 0) { ai.metaData = null; } Loading Loading @@ -452,7 +452,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ApplicationInfo generateDelegateApplicationInfo(@Nullable ApplicationInfo ai, @PackageManager.ApplicationInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ApplicationInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId) { if (ai == null || !checkUseInstalledOrHidden(flags, state, ai)) { return null; Loading @@ -469,7 +469,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateDelegateActivityInfo(@Nullable ActivityInfo a, @PackageManager.ComponentInfoFlags int flags, @NonNull PackageUserState state, @PackageManager.ComponentInfoFlags int flags, @NonNull FrameworkPackageUserState state, int userId) { if (a == null || !checkUseInstalledOrHidden(flags, state, a.applicationInfo)) { return null; Loading @@ -484,7 +484,7 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateActivityInfo(ParsingPackageRead pkg, ParsedActivity a, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (a == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -505,7 +505,7 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateActivityInfo(ParsingPackageRead, ParsedActivity, int, * PackageUserState, ApplicationInfo, int)}. * FrameworkPackageUserState, ApplicationInfo, int)}. */ @NonNull public static ActivityInfo generateActivityInfoUnchecked(@NonNull ParsedActivity a, Loading Loading @@ -550,13 +550,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ActivityInfo generateActivityInfo(ParsingPackageRead pkg, ParsedActivity a, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateActivityInfo(pkg, a, flags, state, null, userId); } @Nullable public static ServiceInfo generateServiceInfo(ParsingPackageRead pkg, ParsedService s, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (s == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -576,7 +576,7 @@ public class PackageInfoWithoutStateUtils { * This bypasses critical checks that are necessary for usage with data passed outside of system * server. * <p> * Prefer {@link #generateServiceInfo(ParsingPackageRead, ParsedService, int, PackageUserState, * Prefer {@link #generateServiceInfo(ParsingPackageRead, ParsedService, int, FrameworkPackageUserState, * ApplicationInfo, int)}. */ @NonNull Loading @@ -600,13 +600,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ServiceInfo generateServiceInfo(ParsingPackageRead pkg, ParsedService s, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateServiceInfo(pkg, s, flags, state, null, userId); } @Nullable public static ProviderInfo generateProviderInfo(ParsingPackageRead pkg, ParsedProvider p, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, @Nullable ApplicationInfo applicationInfo, int userId) { if (p == null) return null; if (!checkUseInstalled(pkg, state, flags)) { Loading @@ -627,7 +627,7 @@ public class PackageInfoWithoutStateUtils { * server. * <p> * Prefer {@link #generateProviderInfo(ParsingPackageRead, ParsedProvider, int, * PackageUserState, ApplicationInfo, int)}. * FrameworkPackageUserState, ApplicationInfo, int)}. */ @NonNull public static ProviderInfo generateProviderInfoUnchecked(@NonNull ParsedProvider p, Loading Loading @@ -661,13 +661,13 @@ public class PackageInfoWithoutStateUtils { @Nullable public static ProviderInfo generateProviderInfo(ParsingPackageRead pkg, ParsedProvider p, @PackageManager.ComponentInfoFlags int flags, PackageUserState state, int userId) { @PackageManager.ComponentInfoFlags int flags, FrameworkPackageUserState state, int userId) { return generateProviderInfo(pkg, p, flags, state, null, userId); } /** * @param assignUserFields see {@link #generateApplicationInfoUnchecked(ParsingPackageRead, int, * PackageUserState, int, boolean)} * FrameworkPackageUserState, int, boolean)} */ @Nullable public static InstrumentationInfo generateInstrumentationInfo(ParsedInstrumentation i, Loading Loading @@ -753,7 +753,7 @@ public class PackageInfoWithoutStateUtils { return new Attribution(pa.getTag(), pa.getLabel()); } private static boolean checkUseInstalledOrHidden(int flags, @NonNull PackageUserState state, private static boolean checkUseInstalledOrHidden(int flags, @NonNull FrameworkPackageUserState state, @Nullable ApplicationInfo appInfo) { // Returns false if the package is hidden system app until installed. if ((flags & PackageManager.MATCH_HIDDEN_UNTIL_INSTALLED_COMPONENTS) == 0 Loading Loading @@ -882,7 +882,7 @@ public class PackageInfoWithoutStateUtils { return privateFlagsExt; } private static boolean checkUseInstalled(ParsingPackageRead pkg, PackageUserState state, private static boolean checkUseInstalled(ParsingPackageRead pkg, FrameworkPackageUserState state, @PackageManager.PackageInfoFlags int flags) { // If available for the target user return PackageUserStateUtils.isAvailable(state, flags); Loading
core/java/android/content/pm/parsing/PkgWithoutStatePackageInfo.java +5 −4 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.pm.parsing.component.ParsedInstrumentation; import android.content.pm.parsing.component.ParsedPermission; import android.content.pm.parsing.component.ParsedProvider; import android.content.pm.parsing.component.ParsedService; import android.content.pm.pkg.FrameworkPackageUserState; import com.android.internal.R; Loading Loading @@ -81,7 +82,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ActivityInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getActivityInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ActivityInfo * @see PackageInfo#activities Loading Loading @@ -152,7 +153,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ProviderInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getProviderInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ProviderInfo * @see PackageInfo#providers Loading @@ -167,7 +168,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ActivityInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getReceiverInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * Since they share several attributes, receivers are parsed as {@link ParsedActivity}, even * though they represent different functionality. Loading Loading @@ -221,7 +222,7 @@ public interface PkgWithoutStatePackageInfo { * provide the same information as {@link ServiceInfo}. Effective state can be queried through * {@link android.content.pm.PackageManager#getServiceInfo(ComponentName, int)} or by * combining state from from com.android.server.pm.pkg.PackageState and * {@link android.content.pm.pkg.PackageUserState}. * {@link FrameworkPackageUserState}. * * @see ServiceInfo * @see PackageInfo#services Loading