Only check downstream permissions in preflight in RecognitionService
Ensure that, in the preflight permission check, RecognitionService does not check the service's own permissions. These will be checked if the RecognitionService tries to access the mic Fixes: 193111794 Test: manual Change-Id: I172849f2e0368f9601dc298e6cf96d7a52219e5a
This commit is contained in:
@@ -115,18 +115,14 @@ public abstract class RecognitionService extends Service {
|
||||
@NonNull AttributionSource attributionSource) {
|
||||
try {
|
||||
if (mCurrentCallback == null) {
|
||||
Context attributionContext = createContext(new ContextParams.Builder()
|
||||
.setNextAttributionSource(attributionSource)
|
||||
.build());
|
||||
boolean preflightPermissionCheckPassed = checkPermissionForPreflight(
|
||||
attributionContext.getAttributionSource());
|
||||
attributionSource);
|
||||
if (preflightPermissionCheckPassed) {
|
||||
if (DBG) {
|
||||
Log.d(TAG, "created new mCurrentCallback, listener = "
|
||||
+ listener.asBinder());
|
||||
}
|
||||
mCurrentCallback = new Callback(listener, attributionSource,
|
||||
attributionContext);
|
||||
mCurrentCallback = new Callback(listener, attributionSource);
|
||||
RecognitionService.this.onStartListening(intent, mCurrentCallback);
|
||||
}
|
||||
|
||||
@@ -293,15 +289,8 @@ public abstract class RecognitionService extends Service {
|
||||
|
||||
private Callback(IRecognitionListener listener,
|
||||
@NonNull AttributionSource attributionSource) {
|
||||
this(listener, attributionSource, null);
|
||||
}
|
||||
|
||||
private Callback(IRecognitionListener listener,
|
||||
@NonNull AttributionSource attributionSource,
|
||||
@Nullable Context attributionContext) {
|
||||
mListener = listener;
|
||||
mCallingAttributionSource = attributionSource;
|
||||
mAttributionContext = attributionContext;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user