Update for Utils.isSystemPackage()
And we also no longer need to load the PackageInfos with the deprecated flag PackageManager.GET_SIGNATURES. Bug: 235727273 Test: Manually with Settings App Change-Id: Id80c40a309e91d4766582375d2c1e25a6f8cf441
This commit is contained in:
@@ -352,7 +352,6 @@ public class AppButtonsPreferenceController extends BasePreferenceController imp
|
||||
mPackageInfo = mPm.getPackageInfo(mAppEntry.info.packageName,
|
||||
PackageManager.MATCH_DISABLED_COMPONENTS |
|
||||
PackageManager.MATCH_ANY_USER |
|
||||
PackageManager.GET_SIGNATURES |
|
||||
PackageManager.GET_PERMISSIONS);
|
||||
|
||||
mPackageName = mAppEntry.info.packageName;
|
||||
@@ -394,7 +393,7 @@ public class AppButtonsPreferenceController extends BasePreferenceController imp
|
||||
// We don't allow uninstalling DO/PO on *any* users if it's a system app, because
|
||||
// "uninstall" is actually "downgrade to the system version + disable", and "downgrade"
|
||||
// will clear data on all users.
|
||||
if (isSystemPackage(mActivity.getResources(), mPm, mPackageInfo)) {
|
||||
if (isSystemPackage(mActivity.getResources(), mPm, mPackageInfo.applicationInfo)) {
|
||||
if (Utils.isProfileOrDeviceOwner(mUserManager, mDpm, mPackageInfo.packageName)) {
|
||||
enabled = false;
|
||||
}
|
||||
@@ -563,7 +562,7 @@ public class AppButtonsPreferenceController extends BasePreferenceController imp
|
||||
// by not allowing disabling of apps signed with the
|
||||
// system cert and any launcher app in the system.
|
||||
if (mHomePackages.contains(mAppEntry.info.packageName)
|
||||
|| isSystemPackage(mActivity.getResources(), mPm, mPackageInfo)) {
|
||||
|| isSystemPackage(mActivity.getResources(), mPm, mPackageInfo.applicationInfo)) {
|
||||
// Disable button for core system applications.
|
||||
mButtonsPref.setButton2Text(R.string.disable_text)
|
||||
.setButton2Icon(R.drawable.ic_settings_disable);
|
||||
@@ -582,8 +581,8 @@ public class AppButtonsPreferenceController extends BasePreferenceController imp
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
boolean isSystemPackage(Resources resources, PackageManager pm, PackageInfo packageInfo) {
|
||||
return Utils.isSystemPackage(resources, pm, packageInfo);
|
||||
boolean isSystemPackage(Resources resources, PackageManager pm, ApplicationInfo app) {
|
||||
return Utils.isSystemPackage(resources, pm, app);
|
||||
}
|
||||
|
||||
private boolean isDisabledUntilUsed() {
|
||||
|
Reference in New Issue
Block a user