Merge "Handle invalid package name in isPermissionsReviewRequired" into qt-dev
am: f4924f1ccb
Change-Id: I8f8c84976910109b1eb2eba4a7eb0089fc767b04
This commit is contained in:
@@ -24334,8 +24334,12 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
@Override
|
||||
public boolean isPermissionsReviewRequired(String packageName, int userId) {
|
||||
synchronized (mPackages) {
|
||||
return mPermissionManager.isPermissionsReviewRequired(
|
||||
mPackages.get(packageName), userId);
|
||||
final PackageParser.Package pkg = mPackages.get(packageName);
|
||||
if (pkg == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return mPermissionManager.isPermissionsReviewRequired(pkg, userId);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1897,14 +1897,15 @@ public class PermissionManagerService {
|
||||
return Boolean.TRUE == granted;
|
||||
}
|
||||
|
||||
private boolean isPermissionsReviewRequired(PackageParser.Package pkg, int userId) {
|
||||
private boolean isPermissionsReviewRequired(@NonNull PackageParser.Package pkg,
|
||||
@UserIdInt int userId) {
|
||||
// Permission review applies only to apps not supporting the new permission model.
|
||||
if (pkg.applicationInfo.targetSdkVersion >= Build.VERSION_CODES.M) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Legacy apps have the permission and get user consent on launch.
|
||||
if (pkg == null || pkg.mExtras == null) {
|
||||
if (pkg.mExtras == null) {
|
||||
return false;
|
||||
}
|
||||
final PackageSetting ps = (PackageSetting) pkg.mExtras;
|
||||
@@ -2952,7 +2953,7 @@ public class PermissionManagerService {
|
||||
PermissionManagerService.this.systemReady();
|
||||
}
|
||||
@Override
|
||||
public boolean isPermissionsReviewRequired(Package pkg, int userId) {
|
||||
public boolean isPermissionsReviewRequired(@NonNull Package pkg, @UserIdInt int userId) {
|
||||
return PermissionManagerService.this.isPermissionsReviewRequired(pkg, userId);
|
||||
}
|
||||
@Override
|
||||
|
||||
@@ -18,6 +18,7 @@ package com.android.server.pm.permission;
|
||||
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.Nullable;
|
||||
import android.annotation.UserIdInt;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.PackageManager.PermissionInfoFlags;
|
||||
import android.content.pm.PackageParser;
|
||||
@@ -65,7 +66,8 @@ public abstract class PermissionManagerServiceInternal extends PermissionManager
|
||||
|
||||
public abstract void systemReady();
|
||||
|
||||
public abstract boolean isPermissionsReviewRequired(PackageParser.Package pkg, int userId);
|
||||
public abstract boolean isPermissionsReviewRequired(@NonNull PackageParser.Package pkg,
|
||||
@UserIdInt int userId);
|
||||
|
||||
public abstract void grantRuntimePermission(
|
||||
@NonNull String permName, @NonNull String packageName, boolean overridePolicy,
|
||||
|
||||
Reference in New Issue
Block a user