Add is_runtime_permission field to AppOps atom to enable filtering.
Test: make statsd_testdrive && ./out/host/linux-x86/bin/statsd_testdrive 10060 Change-Id: Iab8e2671907953fd91bda5f8dd1a71997df08522
This commit is contained in:
@@ -2177,6 +2177,20 @@ public class StatsCompanionService extends IStatsCompanionService.Stub {
|
||||
e.writeLong(op.getBackgroundRejectCount(OP_FLAGS_ALL_TRUSTED));
|
||||
e.writeLong(op.getForegroundAccessDuration(OP_FLAGS_ALL_TRUSTED));
|
||||
e.writeLong(op.getBackgroundAccessDuration(OP_FLAGS_ALL_TRUSTED));
|
||||
|
||||
String perm = AppOpsManager.opToPermission(op.getOpCode());
|
||||
if (perm == null) {
|
||||
e.writeBoolean(false);
|
||||
} else {
|
||||
PermissionInfo permInfo;
|
||||
try {
|
||||
permInfo = mContext.getPackageManager().getPermissionInfo(perm, 0);
|
||||
e.writeBoolean(permInfo.getProtection() == PROTECTION_DANGEROUS);
|
||||
} catch (PackageManager.NameNotFoundException exception) {
|
||||
e.writeBoolean(false);
|
||||
}
|
||||
}
|
||||
|
||||
pulledData.add(e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6716,6 +6716,9 @@ message AppOps {
|
||||
// For long-running operations, total duration of the operation
|
||||
// while the app was in the background (only for trusted requests)
|
||||
optional int64 trusted_background_duration_millis = 9;
|
||||
|
||||
// Whether AppOps is guarded by Runtime permission
|
||||
optional bool is_runtime_permission = 10;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user