Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 399a00ff authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "TEMP: trust recognition service providers" into sc-dev

parents 32bf836d ba40fe89
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -3065,6 +3065,13 @@ public class AppOpsService extends IAppOpsService.Stub {
                shouldCollectAsyncNotedOp, message, shouldCollectMessage, skipProxyOperation);
    }

    // TODO b/184963112: remove once full blaming is implemented
    private boolean isRecognitionServiceTemp(int code, String packageName) {
        return code == OP_RECORD_AUDIO
                && (packageName.equals("com.google.android.googlequicksearchbox")
                || packageName.equals("com.google.android.tts"));
    }

    private SyncNotedAppOp noteProxyOperationImpl(int code, AttributionSource attributionSource,
            boolean shouldCollectAsyncNotedOp, String message, boolean shouldCollectMessage,
            boolean skipProxyOperation) {
@@ -3092,7 +3099,8 @@ public class AppOpsService extends IAppOpsService.Stub {
        final boolean isSelfBlame = Binder.getCallingUid() == proxiedUid;
        final boolean isProxyTrusted = mContext.checkPermission(
                Manifest.permission.UPDATE_APP_OPS_STATS, -1, proxyUid)
                == PackageManager.PERMISSION_GRANTED || isSelfBlame;
                == PackageManager.PERMISSION_GRANTED || isSelfBlame
                || isRecognitionServiceTemp(code, proxyPackageName);

        if (!skipProxyOperation) {
            final int proxyFlags = isProxyTrusted ? AppOpsManager.OP_FLAG_TRUSTED_PROXY