Merge "Handle invalid package name in isPermissionsReviewRequired" into qt-dev am: f4924f1ccb am: 9f7dd342f8
am: c5bdd4dbd4
Change-Id: Ieb20023eca2675c71c26b78dc4cc6b94dded4f54
This commit is contained in:
@@ -24340,8 +24340,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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1904,14 +1904,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;
|
||||
@@ -3111,7 +3112,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