Merge "Treat MODE_FOREGROUND as ALLOWED for appop checks" into rvc-dev am: c670246edb

Change-Id: I6d2cad665f2694bfb9d9ffd3f216805d8b3bca5c
This commit is contained in:
Automerger Merge Worker
2020-03-14 01:43:01 +00:00

View File

@@ -435,10 +435,11 @@ public final class PermissionChecker {
final AppOpsManager appOpsManager = context.getSystemService(AppOpsManager.class);
final int opMode = (forDataDelivery)
? appOpsManager.noteProxyOpNoThrow(op, packageName, uid, attributionTag, message)
: appOpsManager.unsafeCheckOpNoThrow(op, uid, packageName);
: appOpsManager.unsafeCheckOpRawNoThrow(op, uid, packageName);
switch (opMode) {
case AppOpsManager.MODE_ALLOWED: {
case AppOpsManager.MODE_ALLOWED:
case AppOpsManager.MODE_FOREGROUND: {
return PERMISSION_GRANTED;
}
case AppOpsManager.MODE_DEFAULT: {
@@ -467,12 +468,14 @@ public final class PermissionChecker {
final AppOpsManager appOpsManager = context.getSystemService(AppOpsManager.class);
final int opMode = (forDataDelivery)
? appOpsManager.noteProxyOpNoThrow(op, packageName, uid, attributionTag, message)
: appOpsManager.unsafeCheckOpNoThrow(op, uid, packageName);
: appOpsManager.unsafeCheckOpRawNoThrow(op, uid, packageName);
if (opMode == AppOpsManager.MODE_ALLOWED) {
return PERMISSION_GRANTED;
} else {
return PERMISSION_SOFT_DENIED;
switch (opMode) {
case AppOpsManager.MODE_ALLOWED:
case AppOpsManager.MODE_FOREGROUND:
return PERMISSION_GRANTED;
default:
return PERMISSION_SOFT_DENIED;
}
}
}