Added mechanism for setting multiple UIDs as assistants.
Added mechanism for setting multiple services UIDS as assistants. The
current assistant behaviour for recording still remains the same.
Bug: 189312611
Test: m -j, and run assistant via hotword trigger and key press
Change-Id: Iccd01c8a8ceaacc16418e0857bda805452b26152
diff --git a/media/libaudioclient/AudioSystem.cpp b/media/libaudioclient/AudioSystem.cpp
index 40efb38..13b7610 100644
--- a/media/libaudioclient/AudioSystem.cpp
+++ b/media/libaudioclient/AudioSystem.cpp
@@ -1911,20 +1911,13 @@
aps->setSurroundFormatEnabled(audioFormatAidl, enabled));
}
-status_t AudioSystem::setAssistantUid(uid_t uid) {
+status_t AudioSystem::setAssistantServicesUids(const std::vector<uid_t>& uids) {
const sp<IAudioPolicyService>& aps = AudioSystem::get_audio_policy_service();
if (aps == 0) return PERMISSION_DENIED;
- int32_t uidAidl = VALUE_OR_RETURN_STATUS(legacy2aidl_uid_t_int32_t(uid));
- return statusTFromBinderStatus(aps->setAssistantUid(uidAidl));
-}
-
-status_t AudioSystem::setHotwordDetectionServiceUid(uid_t uid) {
- const sp<IAudioPolicyService>& aps = AudioSystem::get_audio_policy_service();
- if (aps == 0) return PERMISSION_DENIED;
-
- int32_t uidAidl = VALUE_OR_RETURN_STATUS(legacy2aidl_uid_t_int32_t(uid));
- return statusTFromBinderStatus(aps->setHotwordDetectionServiceUid(uidAidl));
+ std::vector<int32_t> uidsAidl = VALUE_OR_RETURN_STATUS(
+ convertContainer<std::vector<int32_t>>(uids, legacy2aidl_uid_t_int32_t));
+ return statusTFromBinderStatus(aps->setAssistantServicesUids(uidsAidl));
}
status_t AudioSystem::setA11yServicesUids(const std::vector<uid_t>& uids) {