Merge "Cleanup the PM Computer class" into sc-dev
This commit is contained in:
@@ -1926,20 +1926,13 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
int flags, int userId);
|
||||
@NonNull List<ResolveInfo> queryIntentServicesInternal(Intent intent, String resolvedType,
|
||||
int flags, int userId, int callingUid, boolean includeInstantApps);
|
||||
@NonNull List<ResolveInfo> queryIntentServicesInternalBody(Intent intent,
|
||||
String resolvedType, int flags, int userId, int callingUid,
|
||||
String instantAppPkgName);
|
||||
@NonNull QueryIntentActivitiesResult queryIntentActivitiesInternalBody(Intent intent,
|
||||
String resolvedType, int flags, int filterCallingUid, int userId,
|
||||
boolean resolveForStart, boolean allowDynamicSplits, String pkgName,
|
||||
String instantAppPkgName);
|
||||
@Nullable ComponentName findInstallFailureActivity(String packageName, int filterCallingUid,
|
||||
int userId);
|
||||
ActivityInfo getActivityInfo(ComponentName component, int flags, int userId);
|
||||
ActivityInfo getActivityInfoInternal(ComponentName component, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
ActivityInfo getActivityInfoInternalBody(ComponentName component, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
AndroidPackage getPackage(String packageName);
|
||||
AndroidPackage getPackage(int uid);
|
||||
ApplicationInfo generateApplicationInfoFromSettingsLPw(String packageName, int flags,
|
||||
@@ -1947,11 +1940,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
ApplicationInfo getApplicationInfo(String packageName, int flags, int userId);
|
||||
ApplicationInfo getApplicationInfoInternal(String packageName, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
ApplicationInfo getApplicationInfoInternalBody(String packageName, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
ArrayList<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPrBody(Intent intent,
|
||||
int matchFlags, List<ResolveInfo> candidates, CrossProfileDomainInfo xpDomainInfo,
|
||||
int userId, boolean debug);
|
||||
ComponentName getDefaultHomeActivity(int userId);
|
||||
ComponentName getHomeActivitiesAsUser(List<ResolveInfo> allHomeCandidates, int userId);
|
||||
CrossProfileDomainInfo getCrossProfileDomainPreferredLpr(Intent intent, String resolvedType,
|
||||
@@ -1962,57 +1950,25 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
List<ResolveInfo> applyPostResolutionFilter(@NonNull List<ResolveInfo> resolveInfos,
|
||||
String ephemeralPkgName, boolean allowDynamicSplits, int filterCallingUid,
|
||||
boolean resolveForStart, int userId, Intent intent);
|
||||
List<ResolveInfo> applyPostServiceResolutionFilter(List<ResolveInfo> resolveInfos,
|
||||
String instantAppPkgName, @UserIdInt int userId, int filterCallingUid);
|
||||
List<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPr(Intent intent,
|
||||
int matchFlags, List<ResolveInfo> candidates, CrossProfileDomainInfo xpDomainInfo,
|
||||
int userId);
|
||||
List<ResolveInfo> filterIfNotSystemUser(List<ResolveInfo> resolveInfos, int userId);
|
||||
List<ResolveInfo> maybeAddInstantAppInstaller(List<ResolveInfo> result, Intent intent,
|
||||
String resolvedType, int flags, int userId, boolean resolveForStart,
|
||||
boolean isRequesterInstantApp);
|
||||
PackageInfo generatePackageInfo(PackageSetting ps, int flags, int userId);
|
||||
PackageInfo getPackageInfo(String packageName, int flags, int userId);
|
||||
PackageInfo getPackageInfoInternal(String packageName, long versionCode, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
PackageInfo getPackageInfoInternalBody(String packageName, long versionCode, int flags,
|
||||
int filterCallingUid, int userId);
|
||||
PackageSetting getPackageSetting(String packageName);
|
||||
PackageSetting getPackageSettingInternal(String packageName, int callingUid);
|
||||
ParceledListSlice<PackageInfo> getInstalledPackages(int flags, int userId);
|
||||
ParceledListSlice<PackageInfo> getInstalledPackagesBody(int flags, int userId,
|
||||
int callingUid);
|
||||
ResolveInfo createForwardingResolveInfo(CrossProfileIntentFilter filter, Intent intent,
|
||||
String resolvedType, int flags, int sourceUserId);
|
||||
ResolveInfo createForwardingResolveInfoUnchecked(WatchedIntentFilter filter,
|
||||
int sourceUserId, int targetUserId);
|
||||
ResolveInfo queryCrossProfileIntents(List<CrossProfileIntentFilter> matchingFilters,
|
||||
Intent intent, String resolvedType, int flags, int sourceUserId,
|
||||
boolean matchInCurrentProfile);
|
||||
ResolveInfo querySkipCurrentProfileIntents(List<CrossProfileIntentFilter> matchingFilters,
|
||||
Intent intent, String resolvedType, int flags, int sourceUserId);
|
||||
ServiceInfo getServiceInfo(ComponentName component, int flags, int userId);
|
||||
ServiceInfo getServiceInfoBody(ComponentName component, int flags, int userId,
|
||||
int callingUid);
|
||||
SharedLibraryInfo getSharedLibraryInfoLPr(String name, long version);
|
||||
String getInstantAppPackageName(int callingUid);
|
||||
String resolveExternalPackageNameLPr(AndroidPackage pkg);
|
||||
String resolveInternalPackageNameInternalLocked(String packageName, long versionCode,
|
||||
int callingUid);
|
||||
String resolveInternalPackageNameLPr(String packageName, long versionCode);
|
||||
String[] getPackagesForUid(int uid);
|
||||
String[] getPackagesForUidInternal(int uid, int callingUid);
|
||||
String[] getPackagesForUidInternalBody(int callingUid, int userId, int appId,
|
||||
boolean isCallerInstantApp);
|
||||
UserInfo getProfileParent(int userId);
|
||||
boolean areWebInstantAppsDisabled(int userId);
|
||||
boolean canViewInstantApps(int callingUid, int userId);
|
||||
boolean filterSharedLibPackageLPr(@Nullable PackageSetting ps, int uid, int userId,
|
||||
int flags);
|
||||
boolean hasCrossUserPermission(int callingUid, int callingUserId, int userId,
|
||||
boolean requireFullPermission, boolean requirePermissionWhenSameUser);
|
||||
boolean hasNonNegativePriority(List<ResolveInfo> resolveInfos);
|
||||
boolean hasPermission(String permission);
|
||||
boolean isCallerSameApp(String packageName, int uid);
|
||||
boolean isComponentVisibleToInstantApp(@Nullable ComponentName component);
|
||||
boolean isComponentVisibleToInstantApp(@Nullable ComponentName component,
|
||||
@@ -2021,27 +1977,15 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
String resolvedType, int flags);
|
||||
boolean isInstantApp(String packageName, int userId);
|
||||
boolean isInstantAppInternal(String packageName, @UserIdInt int userId, int callingUid);
|
||||
boolean isInstantAppInternalBody(String packageName, @UserIdInt int userId, int callingUid);
|
||||
boolean isInstantAppResolutionAllowed(Intent intent, List<ResolveInfo> resolvedActivities,
|
||||
int userId, boolean skipPackageCheck, int flags);
|
||||
boolean isInstantAppResolutionAllowedBody(Intent intent,
|
||||
List<ResolveInfo> resolvedActivities, int userId, boolean skipPackageCheck,
|
||||
int flags);
|
||||
boolean isPersistentPreferredActivitySetByDpm(Intent intent, int userId,
|
||||
String resolvedType, int flags);
|
||||
boolean isRecentsAccessingChildProfiles(int callingUid, int targetUserId);
|
||||
boolean isSameProfileGroup(@UserIdInt int callerUserId, @UserIdInt int userId);
|
||||
boolean isUserEnabled(int userId);
|
||||
boolean shouldFilterApplicationLocked(@Nullable PackageSetting ps, int callingUid,
|
||||
@Nullable ComponentName component, @ComponentType int componentType, int userId);
|
||||
boolean shouldFilterApplicationLocked(@Nullable PackageSetting ps, int callingUid,
|
||||
int userId);
|
||||
boolean shouldFilterApplicationLocked(@NonNull SharedUserSetting sus, int callingUid,
|
||||
int userId);
|
||||
int bestDomainVerificationStatus(int status1, int status2);
|
||||
int checkUidPermission(String permName, int uid);
|
||||
int getPackageUidInternal(String packageName, int flags, int userId, int callingUid);
|
||||
int updateFlags(int flags, int userId);
|
||||
int updateFlagsForApplication(int flags, int userId);
|
||||
int updateFlagsForComponent(int flags, int userId);
|
||||
int updateFlagsForPackage(int flags, int userId);
|
||||
@@ -2348,7 +2292,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
userId, callingUid, instantAppPkgName);
|
||||
}
|
||||
|
||||
public @NonNull List<ResolveInfo> queryIntentServicesInternalBody(Intent intent,
|
||||
protected @NonNull List<ResolveInfo> queryIntentServicesInternalBody(Intent intent,
|
||||
String resolvedType, int flags, int userId, int callingUid,
|
||||
String instantAppPkgName) {
|
||||
// reader
|
||||
@@ -2486,7 +2430,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
* creating an activity with an intent filter that handles the action
|
||||
* {@link Intent#ACTION_INSTALL_FAILURE}.
|
||||
*/
|
||||
public @Nullable ComponentName findInstallFailureActivity(
|
||||
private @Nullable ComponentName findInstallFailureActivity(
|
||||
String packageName, int filterCallingUid, int userId) {
|
||||
final Intent failureActivityIntent = new Intent(Intent.ACTION_INSTALL_FAILURE);
|
||||
failureActivityIntent.setPackage(packageName);
|
||||
@@ -2532,7 +2476,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return getActivityInfoInternalBody(component, flags, filterCallingUid, userId);
|
||||
}
|
||||
|
||||
public ActivityInfo getActivityInfoInternalBody(ComponentName component, int flags,
|
||||
protected ActivityInfo getActivityInfoInternalBody(ComponentName component, int flags,
|
||||
int filterCallingUid, int userId) {
|
||||
ParsedActivity a = mComponentResolver.getActivity(component);
|
||||
|
||||
@@ -2624,7 +2568,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return getApplicationInfoInternalBody(packageName, flags, filterCallingUid, userId);
|
||||
}
|
||||
|
||||
public ApplicationInfo getApplicationInfoInternalBody(String packageName, int flags,
|
||||
protected ApplicationInfo getApplicationInfoInternalBody(String packageName, int flags,
|
||||
int filterCallingUid, int userId) {
|
||||
// writer
|
||||
// Normalize package name to handle renamed packages and static libs
|
||||
@@ -2678,7 +2622,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public ArrayList<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPrBody(
|
||||
protected ArrayList<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPrBody(
|
||||
Intent intent, int matchFlags, List<ResolveInfo> candidates,
|
||||
CrossProfileDomainInfo xpDomainInfo, int userId, boolean debug) {
|
||||
final ArrayList<ResolveInfo> result = new ArrayList<>();
|
||||
@@ -3017,7 +2961,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return resolveInfos;
|
||||
}
|
||||
|
||||
public List<ResolveInfo> applyPostServiceResolutionFilter(List<ResolveInfo> resolveInfos,
|
||||
private List<ResolveInfo> applyPostServiceResolutionFilter(List<ResolveInfo> resolveInfos,
|
||||
String instantAppPkgName, @UserIdInt int userId, int filterCallingUid) {
|
||||
for (int i = resolveInfos.size() - 1; i >= 0; i--) {
|
||||
final ResolveInfo info = resolveInfos.get(i);
|
||||
@@ -3105,7 +3049,8 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
*
|
||||
* @return filtered list
|
||||
*/
|
||||
public List<ResolveInfo> filterIfNotSystemUser(List<ResolveInfo> resolveInfos, int userId) {
|
||||
private List<ResolveInfo> filterIfNotSystemUser(List<ResolveInfo> resolveInfos,
|
||||
int userId) {
|
||||
if (userId == UserHandle.USER_SYSTEM) {
|
||||
return resolveInfos;
|
||||
}
|
||||
@@ -3118,7 +3063,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return resolveInfos;
|
||||
}
|
||||
|
||||
public List<ResolveInfo> maybeAddInstantAppInstaller(List<ResolveInfo> result,
|
||||
private List<ResolveInfo> maybeAddInstantAppInstaller(List<ResolveInfo> result,
|
||||
Intent intent,
|
||||
String resolvedType, int flags, int userId, boolean resolveForStart,
|
||||
boolean isRequesterInstantApp) {
|
||||
@@ -3314,7 +3259,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
userId);
|
||||
}
|
||||
|
||||
public PackageInfo getPackageInfoInternalBody(String packageName, long versionCode,
|
||||
protected PackageInfo getPackageInfoInternalBody(String packageName, long versionCode,
|
||||
int flags, int filterCallingUid, int userId) {
|
||||
// reader
|
||||
// Normalize package name to handle renamed packages and static libs
|
||||
@@ -3398,7 +3343,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return getInstalledPackagesBody(flags, userId, callingUid);
|
||||
}
|
||||
|
||||
public ParceledListSlice<PackageInfo> getInstalledPackagesBody(int flags, int userId,
|
||||
protected ParceledListSlice<PackageInfo> getInstalledPackagesBody(int flags, int userId,
|
||||
int callingUid) {
|
||||
// writer
|
||||
final boolean listUninstalled = (flags & MATCH_KNOWN_PACKAGES) != 0;
|
||||
@@ -3473,7 +3418,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
* will forward the intent to the filter's target user.
|
||||
* Otherwise, returns null.
|
||||
*/
|
||||
public ResolveInfo createForwardingResolveInfo(CrossProfileIntentFilter filter,
|
||||
private ResolveInfo createForwardingResolveInfo(CrossProfileIntentFilter filter,
|
||||
Intent intent,
|
||||
String resolvedType, int flags, int sourceUserId) {
|
||||
int targetUserId = filter.getTargetUserId();
|
||||
@@ -3528,7 +3473,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
}
|
||||
|
||||
// Return matching ResolveInfo in target user if any.
|
||||
public ResolveInfo queryCrossProfileIntents(
|
||||
private ResolveInfo queryCrossProfileIntents(
|
||||
List<CrossProfileIntentFilter> matchingFilters, Intent intent, String resolvedType,
|
||||
int flags, int sourceUserId, boolean matchInCurrentProfile) {
|
||||
if (matchingFilters != null) {
|
||||
@@ -3558,7 +3503,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public ResolveInfo querySkipCurrentProfileIntents(
|
||||
private ResolveInfo querySkipCurrentProfileIntents(
|
||||
List<CrossProfileIntentFilter> matchingFilters, Intent intent, String resolvedType,
|
||||
int flags, int sourceUserId) {
|
||||
if (matchingFilters != null) {
|
||||
@@ -3589,7 +3534,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return getServiceInfoBody(component, flags, userId, callingUid);
|
||||
}
|
||||
|
||||
public ServiceInfo getServiceInfoBody(ComponentName component, int flags, int userId,
|
||||
protected ServiceInfo getServiceInfoBody(ComponentName component, int flags, int userId,
|
||||
int callingUid) {
|
||||
ParsedService s = mComponentResolver.getService(component);
|
||||
if (DEBUG_PACKAGE_INFO) Log.v(
|
||||
@@ -3656,7 +3601,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return pkg.getPackageName();
|
||||
}
|
||||
|
||||
public String resolveInternalPackageNameInternalLocked(
|
||||
private String resolveInternalPackageNameInternalLocked(
|
||||
String packageName, long versionCode, int callingUid) {
|
||||
// Handle renamed packages
|
||||
String normalizedPackageName = mSettings.getRenamedPackageLPr(packageName);
|
||||
@@ -3748,14 +3693,14 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return getPackagesForUidInternal(uid, Binder.getCallingUid());
|
||||
}
|
||||
|
||||
public String[] getPackagesForUidInternal(int uid, int callingUid) {
|
||||
private String[] getPackagesForUidInternal(int uid, int callingUid) {
|
||||
final boolean isCallerInstantApp = getInstantAppPackageName(callingUid) != null;
|
||||
final int userId = UserHandle.getUserId(uid);
|
||||
final int appId = UserHandle.getAppId(uid);
|
||||
return getPackagesForUidInternalBody(callingUid, userId, appId, isCallerInstantApp);
|
||||
}
|
||||
|
||||
public String[] getPackagesForUidInternalBody(int callingUid, int userId, int appId,
|
||||
protected String[] getPackagesForUidInternalBody(int callingUid, int userId, int appId,
|
||||
boolean isCallerInstantApp) {
|
||||
// reader
|
||||
final Object obj = mSettings.getSettingLPr(appId);
|
||||
@@ -3797,7 +3742,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
/**
|
||||
* Returns whether or not instant apps have been disabled remotely.
|
||||
*/
|
||||
public boolean areWebInstantAppsDisabled(int userId) {
|
||||
private boolean areWebInstantAppsDisabled(int userId) {
|
||||
return mWebInstantAppsDisabled.get(userId);
|
||||
}
|
||||
|
||||
@@ -3894,7 +3839,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean hasCrossUserPermission(
|
||||
private boolean hasCrossUserPermission(
|
||||
int callingUid, int callingUserId, int userId, boolean requireFullPermission,
|
||||
boolean requirePermissionWhenSameUser) {
|
||||
if (!requirePermissionWhenSameUser && userId == callingUserId) {
|
||||
@@ -3914,11 +3859,11 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
* @param resolveInfos list of resolve infos in descending priority order
|
||||
* @return if the list contains a resolve info with non-negative priority
|
||||
*/
|
||||
public boolean hasNonNegativePriority(List<ResolveInfo> resolveInfos) {
|
||||
private boolean hasNonNegativePriority(List<ResolveInfo> resolveInfos) {
|
||||
return resolveInfos.size() > 0 && resolveInfos.get(0).priority >= 0;
|
||||
}
|
||||
|
||||
public boolean hasPermission(String permission) {
|
||||
private boolean hasPermission(String permission) {
|
||||
return mContext.checkCallingOrSelfPermission(permission)
|
||||
== PackageManager.PERMISSION_GRANTED;
|
||||
}
|
||||
@@ -4012,7 +3957,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return isInstantAppInternalBody(packageName, userId, callingUid);
|
||||
}
|
||||
|
||||
public boolean isInstantAppInternalBody(String packageName, @UserIdInt int userId,
|
||||
protected boolean isInstantAppInternalBody(String packageName, @UserIdInt int userId,
|
||||
int callingUid) {
|
||||
if (Process.isIsolated(callingUid)) {
|
||||
callingUid = getIsolatedOwner(callingUid);
|
||||
@@ -4030,7 +3975,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isInstantAppResolutionAllowed(
|
||||
private boolean isInstantAppResolutionAllowed(
|
||||
Intent intent, List<ResolveInfo> resolvedActivities, int userId,
|
||||
boolean skipPackageCheck, int flags) {
|
||||
if (mInstantAppResolverConnection == null) {
|
||||
@@ -4070,7 +4015,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
|
||||
// Deny ephemeral apps if the user chose _ALWAYS or _ALWAYS_ASK for intent resolution.
|
||||
// Or if there's already an ephemeral app installed that handles the action
|
||||
public boolean isInstantAppResolutionAllowedBody(
|
||||
protected boolean isInstantAppResolutionAllowedBody(
|
||||
Intent intent, List<ResolveInfo> resolvedActivities, int userId,
|
||||
boolean skipPackageCheck, int flags) {
|
||||
final int count = (resolvedActivities == null ? 0 : resolvedActivities.size());
|
||||
@@ -4103,7 +4048,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean isPersistentPreferredActivitySetByDpm(Intent intent, int userId,
|
||||
private boolean isPersistentPreferredActivitySetByDpm(Intent intent, int userId,
|
||||
String resolvedType, int flags) {
|
||||
PersistentPreferredIntentResolver ppir =
|
||||
mSettings.getPersistentPreferredActivities(userId);
|
||||
@@ -4121,7 +4066,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isRecentsAccessingChildProfiles(int callingUid, int targetUserId) {
|
||||
private boolean isRecentsAccessingChildProfiles(int callingUid, int targetUserId) {
|
||||
if (!mInjector.getLocalService(ActivityTaskManagerInternal.class)
|
||||
.isCallerRecents(callingUid)) {
|
||||
return false;
|
||||
@@ -4147,7 +4092,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isUserEnabled(int userId) {
|
||||
private boolean isUserEnabled(int userId) {
|
||||
final long callingId = Binder.clearCallingIdentity();
|
||||
try {
|
||||
UserInfo userInfo = mUserManager.getUserInfo(userId);
|
||||
@@ -4247,7 +4192,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
* Verification statuses are ordered from the worse to the best, except for
|
||||
* INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER, which is the worse.
|
||||
*/
|
||||
public int bestDomainVerificationStatus(int status1, int status2) {
|
||||
private int bestDomainVerificationStatus(int status1, int status2) {
|
||||
if (status1 == INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER) {
|
||||
return status2;
|
||||
}
|
||||
@@ -4287,7 +4232,7 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
/**
|
||||
* Update given flags based on encryption status of current user.
|
||||
*/
|
||||
public int updateFlags(int flags, int userId) {
|
||||
private int updateFlags(int flags, int userId) {
|
||||
if ((flags & (PackageManager.MATCH_DIRECT_BOOT_UNAWARE
|
||||
| PackageManager.MATCH_DIRECT_BOOT_AWARE)) != 0) {
|
||||
// Caller expressed an explicit opinion about what encryption
|
||||
@@ -7892,12 +7837,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
flags, filterCallingUid, userId);
|
||||
}
|
||||
|
||||
private PackageInfo getPackageInfoInternalBody(String packageName, long versionCode,
|
||||
int flags, int filterCallingUid, int userId) {
|
||||
return liveComputer().getPackageInfoInternalBody(packageName, versionCode,
|
||||
flags, filterCallingUid, userId);
|
||||
}
|
||||
|
||||
private boolean isComponentVisibleToInstantApp(@Nullable ComponentName component) {
|
||||
return liveComputer().isComponentVisibleToInstantApp(component);
|
||||
}
|
||||
@@ -8084,12 +8023,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
filterCallingUid, userId);
|
||||
}
|
||||
|
||||
private ApplicationInfo getApplicationInfoInternalBody(String packageName, int flags,
|
||||
int filterCallingUid, int userId) {
|
||||
return liveComputer().getApplicationInfoInternalBody(packageName, flags,
|
||||
filterCallingUid, userId);
|
||||
}
|
||||
|
||||
@GuardedBy("mLock")
|
||||
private String normalizePackageNameLPr(String packageName) {
|
||||
String normalizedPackageName = mSettings.getRenamedPackageLPr(packageName);
|
||||
@@ -8316,13 +8249,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update given flags based on encryption status of current user.
|
||||
*/
|
||||
private int updateFlags(int flags, int userId) {
|
||||
return liveComputer().updateFlags(flags, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update given flags when being used to request {@link PackageInfo}.
|
||||
*/
|
||||
@@ -8417,16 +8343,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
filterCallingUid, userId);
|
||||
}
|
||||
|
||||
private ActivityInfo getActivityInfoInternalBody(ComponentName component, int flags,
|
||||
int filterCallingUid, int userId) {
|
||||
return liveComputer().getActivityInfoInternalBody(component, flags,
|
||||
filterCallingUid, userId);
|
||||
}
|
||||
|
||||
private boolean isRecentsAccessingChildProfiles(int callingUid, int targetUserId) {
|
||||
return liveComputer().isRecentsAccessingChildProfiles(callingUid, targetUserId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean activitySupportsIntent(ComponentName component, Intent intent,
|
||||
String resolvedType) {
|
||||
@@ -8692,12 +8608,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return snapshotComputer().getServiceInfo(component, flags, userId);
|
||||
}
|
||||
|
||||
private ServiceInfo getServiceInfoBody(ComponentName component, int flags, int userId,
|
||||
int callingUid) {
|
||||
return liveComputer().getServiceInfoBody(component, flags, userId,
|
||||
callingUid);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProviderInfo getProviderInfo(ComponentName component, int flags, int userId) {
|
||||
if (!mUserManager.exists(userId)) return null;
|
||||
@@ -9245,16 +9155,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return snapshotComputer().getPackagesForUid(uid);
|
||||
}
|
||||
|
||||
private String[] getPackagesForUidInternal(int uid, int callingUid) {
|
||||
return liveComputer().getPackagesForUidInternal(uid, callingUid);
|
||||
}
|
||||
|
||||
private String[] getPackagesForUidInternalBody(int callingUid, int userId, int appId,
|
||||
boolean isCallerInstantApp) {
|
||||
return liveComputer().getPackagesForUidInternalBody(callingUid, userId, appId,
|
||||
isCallerInstantApp);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getNameForUid(int uid) {
|
||||
final int callingUid = Binder.getCallingUid();
|
||||
@@ -9558,31 +9458,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
intent, resolvedType, flags, query, 0, false, false, false, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns whether or not instant apps have been disabled remotely.
|
||||
*/
|
||||
private boolean areWebInstantAppsDisabled(int userId) {
|
||||
return liveComputer().areWebInstantAppsDisabled(userId);
|
||||
}
|
||||
|
||||
private boolean isInstantAppResolutionAllowed(
|
||||
Intent intent, List<ResolveInfo> resolvedActivities, int userId,
|
||||
boolean skipPackageCheck, int flags) {
|
||||
return liveComputer().isInstantAppResolutionAllowed(
|
||||
intent, resolvedActivities, userId,
|
||||
skipPackageCheck, flags);
|
||||
}
|
||||
|
||||
// Deny ephemeral apps if the user chose _ALWAYS or _ALWAYS_ASK for intent resolution.
|
||||
// Or if there's already an ephemeral app installed that handles the action
|
||||
private boolean isInstantAppResolutionAllowedBody(
|
||||
Intent intent, List<ResolveInfo> resolvedActivities, int userId,
|
||||
boolean skipPackageCheck, int flags) {
|
||||
return liveComputer().isInstantAppResolutionAllowedBody(
|
||||
intent, resolvedActivities, userId,
|
||||
skipPackageCheck, flags);
|
||||
}
|
||||
|
||||
private void requestInstantAppResolutionPhaseTwo(AuxiliaryResolveInfo responseObj,
|
||||
Intent origIntent, String resolvedType, String callingPackage,
|
||||
@Nullable String callingFeatureId, boolean isRequesterInstantApp,
|
||||
@@ -9734,12 +9609,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
resolvedType, flags);
|
||||
}
|
||||
|
||||
private boolean isPersistentPreferredActivitySetByDpm(Intent intent, int userId,
|
||||
String resolvedType, int flags) {
|
||||
return liveComputer().isPersistentPreferredActivitySetByDpm(intent, userId,
|
||||
resolvedType, flags);
|
||||
}
|
||||
|
||||
@GuardedBy("mLock")
|
||||
private ResolveInfo findPersistentPreferredActivityLP(Intent intent, String resolvedType,
|
||||
int flags, List<ResolveInfo> query, boolean debug, int userId) {
|
||||
@@ -10133,14 +10002,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
instantAppPkgName);
|
||||
}
|
||||
|
||||
private List<ResolveInfo> maybeAddInstantAppInstaller(List<ResolveInfo> result, Intent intent,
|
||||
String resolvedType, int flags, int userId, boolean resolveForStart,
|
||||
boolean isRequesterInstantApp) {
|
||||
return liveComputer().maybeAddInstantAppInstaller(result, intent,
|
||||
resolvedType, flags, userId, resolveForStart,
|
||||
isRequesterInstantApp);
|
||||
}
|
||||
|
||||
private static class CrossProfileDomainInfo {
|
||||
/* ResolveInfo for IntentForwarderActivity to send the intent to the other profile */
|
||||
ResolveInfo resolveInfo;
|
||||
@@ -10153,27 +10014,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
resolvedType, flags, sourceUserId, parentUserId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Verification statuses are ordered from the worse to the best, except for
|
||||
* INTENT_FILTER_DOMAIN_VERIFICATION_STATUS_NEVER, which is the worse.
|
||||
*/
|
||||
private int bestDomainVerificationStatus(int status1, int status2) {
|
||||
return liveComputer().bestDomainVerificationStatus(status1, status2);
|
||||
}
|
||||
|
||||
private boolean isUserEnabled(int userId) {
|
||||
return liveComputer().isUserEnabled(userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Filter out activities with systemUserOnly flag set, when current user is not System.
|
||||
*
|
||||
* @return filtered list
|
||||
*/
|
||||
private List<ResolveInfo> filterIfNotSystemUser(List<ResolveInfo> resolveInfos, int userId) {
|
||||
return liveComputer().filterIfNotSystemUser(resolveInfos, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Filters out ephemeral activities.
|
||||
* <p>When resolving for an ephemeral app, only activities that 1) are defined in the
|
||||
@@ -10193,72 +10033,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
resolveForStart, userId, intent);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the activity component that can handle install failures.
|
||||
* <p>By default, the instant application installer handles failures. However, an
|
||||
* application may want to handle failures on its own. Applications do this by
|
||||
* creating an activity with an intent filter that handles the action
|
||||
* {@link Intent#ACTION_INSTALL_FAILURE}.
|
||||
*/
|
||||
private @Nullable ComponentName findInstallFailureActivity(
|
||||
String packageName, int filterCallingUid, int userId) {
|
||||
return liveComputer().findInstallFailureActivity(
|
||||
packageName, filterCallingUid, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param resolveInfos list of resolve infos in descending priority order
|
||||
* @return if the list contains a resolve info with non-negative priority
|
||||
*/
|
||||
private boolean hasNonNegativePriority(List<ResolveInfo> resolveInfos) {
|
||||
return liveComputer().hasNonNegativePriority(resolveInfos);
|
||||
}
|
||||
|
||||
private List<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPr(Intent intent,
|
||||
int matchFlags, List<ResolveInfo> candidates, CrossProfileDomainInfo xpDomainInfo,
|
||||
int userId) {
|
||||
return liveComputer().filterCandidatesWithDomainPreferredActivitiesLPr(intent,
|
||||
matchFlags, candidates, xpDomainInfo,
|
||||
userId);
|
||||
}
|
||||
|
||||
private ArrayList<ResolveInfo> filterCandidatesWithDomainPreferredActivitiesLPrBody(
|
||||
Intent intent, int matchFlags, List<ResolveInfo> candidates,
|
||||
CrossProfileDomainInfo xpDomainInfo, int userId, boolean debug) {
|
||||
return liveComputer().filterCandidatesWithDomainPreferredActivitiesLPrBody(
|
||||
intent, matchFlags, candidates,
|
||||
xpDomainInfo, userId, debug);
|
||||
}
|
||||
|
||||
|
||||
private ResolveInfo querySkipCurrentProfileIntents(
|
||||
List<CrossProfileIntentFilter> matchingFilters, Intent intent, String resolvedType,
|
||||
int flags, int sourceUserId) {
|
||||
return liveComputer().querySkipCurrentProfileIntents(
|
||||
matchingFilters, intent, resolvedType,
|
||||
flags, sourceUserId);
|
||||
}
|
||||
|
||||
// Return matching ResolveInfo in target user if any.
|
||||
private ResolveInfo queryCrossProfileIntents(
|
||||
List<CrossProfileIntentFilter> matchingFilters, Intent intent, String resolvedType,
|
||||
int flags, int sourceUserId, boolean matchInCurrentProfile) {
|
||||
return liveComputer().queryCrossProfileIntents(
|
||||
matchingFilters, intent, resolvedType,
|
||||
flags, sourceUserId, matchInCurrentProfile);
|
||||
}
|
||||
|
||||
/**
|
||||
* If the filter's target user can handle the intent and is enabled: returns a ResolveInfo that
|
||||
* will forward the intent to the filter's target user.
|
||||
* Otherwise, returns null.
|
||||
*/
|
||||
private ResolveInfo createForwardingResolveInfo(CrossProfileIntentFilter filter, Intent intent,
|
||||
String resolvedType, int flags, int sourceUserId) {
|
||||
return liveComputer().createForwardingResolveInfo(filter, intent,
|
||||
resolvedType, flags, sourceUserId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull ParceledListSlice<ResolveInfo> queryIntentActivityOptions(ComponentName caller,
|
||||
Intent[] specifics, String[] specificTypes, Intent intent,
|
||||
@@ -10580,20 +10354,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
includeInstantApps);
|
||||
}
|
||||
|
||||
private @NonNull List<ResolveInfo> queryIntentServicesInternalBody(Intent intent,
|
||||
String resolvedType, int flags, int userId, int callingUid,
|
||||
String instantAppPkgName) {
|
||||
return liveComputer().queryIntentServicesInternalBody(intent,
|
||||
resolvedType, flags, userId, callingUid,
|
||||
instantAppPkgName);
|
||||
}
|
||||
|
||||
private List<ResolveInfo> applyPostServiceResolutionFilter(List<ResolveInfo> resolveInfos,
|
||||
String instantAppPkgName, @UserIdInt int userId, int filterCallingUid) {
|
||||
return liveComputer().applyPostServiceResolutionFilter(resolveInfos,
|
||||
instantAppPkgName, userId, filterCallingUid);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull ParceledListSlice<ResolveInfo> queryIntentContentProviders(Intent intent,
|
||||
String resolvedType, int flags, int userId) {
|
||||
@@ -10746,12 +10506,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return snapshotComputer().getInstalledPackages(flags, userId);
|
||||
}
|
||||
|
||||
private ParceledListSlice<PackageInfo> getInstalledPackagesBody(int flags, int userId,
|
||||
int callingUid) {
|
||||
return liveComputer().getInstalledPackagesBody(flags, userId,
|
||||
callingUid);
|
||||
}
|
||||
|
||||
private void addPackageHoldingPermissions(ArrayList<PackageInfo> list, PackageSetting ps,
|
||||
String[] permissions, boolean[] tmp, int flags, int userId) {
|
||||
int numMatch = 0;
|
||||
@@ -10935,12 +10689,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
callingUid);
|
||||
}
|
||||
|
||||
private boolean isInstantAppInternalBody(String packageName, @UserIdInt int userId,
|
||||
int callingUid) {
|
||||
return liveComputer().isInstantAppInternalBody(packageName, userId,
|
||||
callingUid);
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte[] getInstantAppCookie(String packageName, int userId) {
|
||||
if (HIDE_EPHEMERAL_APIS) {
|
||||
@@ -11796,18 +11544,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
requireFullPermission, checkShell, message);
|
||||
}
|
||||
|
||||
private boolean hasCrossUserPermission(
|
||||
int callingUid, int callingUserId, int userId, boolean requireFullPermission,
|
||||
boolean requirePermissionWhenSameUser) {
|
||||
return liveComputer().hasCrossUserPermission(
|
||||
callingUid, callingUserId, userId, requireFullPermission,
|
||||
requirePermissionWhenSameUser);
|
||||
}
|
||||
|
||||
private boolean hasPermission(String permission) {
|
||||
return liveComputer().hasPermission(permission);
|
||||
}
|
||||
|
||||
private boolean isSameProfileGroup(@UserIdInt int callerUserId, @UserIdInt int userId) {
|
||||
return liveComputer().isSameProfileGroup(callerUserId, userId);
|
||||
}
|
||||
@@ -20681,12 +20417,6 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
return liveComputer().resolveInternalPackageNameLPr(packageName, versionCode);
|
||||
}
|
||||
|
||||
private String resolveInternalPackageNameInternalLocked(
|
||||
String packageName, long versionCode, int callingUid) {
|
||||
return liveComputer().resolveInternalPackageNameInternalLocked(
|
||||
packageName, versionCode, callingUid);
|
||||
}
|
||||
|
||||
boolean isCallerVerifier(int callingUid) {
|
||||
final int callingUserId = UserHandle.getUserId(callingUid);
|
||||
return mRequiredVerifierPackage != null &&
|
||||
|
||||
Reference in New Issue
Block a user