Merge "Prevent ST clients from auto-attach to fake HAL" into udc-dev
This commit is contained in:
@@ -78,6 +78,11 @@ public class SoundTrigger {
|
||||
private SoundTrigger() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
public static final String FAKE_HAL_ARCH = "injection";
|
||||
|
||||
/**
|
||||
* Status code used when the operation succeeded
|
||||
*/
|
||||
|
||||
@@ -805,11 +805,13 @@ public class AlwaysOnHotwordDetector extends AbstractDetector {
|
||||
Identity identity = new Identity();
|
||||
identity.packageName = ActivityThread.currentOpPackageName();
|
||||
if (moduleProperties == null) {
|
||||
List<SoundTrigger.ModuleProperties> modulePropList =
|
||||
mModelManagementService.listModuleProperties(identity);
|
||||
if (modulePropList.size() > 0) {
|
||||
moduleProperties = modulePropList.get(0);
|
||||
}
|
||||
moduleProperties = mModelManagementService
|
||||
.listModuleProperties(identity)
|
||||
.stream()
|
||||
.filter(prop -> !prop.getSupportedModelArch()
|
||||
.equals(SoundTrigger.FAKE_HAL_ARCH))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
// (@atneya) intentionally let a null moduleProperties through until
|
||||
// all CTS tests are fixed
|
||||
}
|
||||
|
||||
@@ -94,12 +94,17 @@ public final class SoundTriggerManager {
|
||||
originatorIdentity.packageName = ActivityThread.currentOpPackageName();
|
||||
|
||||
try (SafeCloseable ignored = ClearCallingIdentityContext.create()) {
|
||||
List<ModuleProperties> modulePropertiesList = soundTriggerService
|
||||
.listModuleProperties(originatorIdentity);
|
||||
if (!modulePropertiesList.isEmpty()) {
|
||||
ModuleProperties moduleProperties = soundTriggerService
|
||||
.listModuleProperties(originatorIdentity)
|
||||
.stream()
|
||||
.filter(prop -> !prop.getSupportedModelArch()
|
||||
.equals(SoundTrigger.FAKE_HAL_ARCH))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
if (moduleProperties != null) {
|
||||
mSoundTriggerSession = soundTriggerService.attachAsOriginator(
|
||||
originatorIdentity,
|
||||
modulePropertiesList.get(0),
|
||||
moduleProperties,
|
||||
mBinderToken);
|
||||
} else {
|
||||
mSoundTriggerSession = null;
|
||||
|
||||
Reference in New Issue
Block a user