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

Commit 7714a182 authored by Evan Severson's avatar Evan Severson Committed by Android (Google) Code Review
Browse files

Merge "Check permission for soundtrigger detection service" into rvc-dev

parents 954c18bd b07f0599
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -443,6 +443,8 @@ public class SoundTriggerService extends SystemService {

            enforceCallingPermission(Manifest.permission.MANAGE_SOUND_TRIGGER);

            enforceDetectionPermissions(detectionService);

            if (!isInitialized()) return STATUS_ERROR;
            if (DEBUG) {
                Slog.i(TAG, "startRecognition(): id = " + soundModelId);
@@ -1532,6 +1534,16 @@ public class SoundTriggerService extends SystemService {
        }
    }

    private void enforceDetectionPermissions(ComponentName detectionService) {
        PackageManager packageManager = mContext.getPackageManager();
        String packageName = detectionService.getPackageName();
        if (packageManager.checkPermission(Manifest.permission.CAPTURE_AUDIO_HOTWORD, packageName)
                != PackageManager.PERMISSION_GRANTED) {
            throw new SecurityException(detectionService.getPackageName() + " does not have"
                    + " permission " + Manifest.permission.CAPTURE_AUDIO_HOTWORD);
        }
    }

    //=================================================================
    // For logging