Apply Assistant AudioPolicy to HotwordDetectionService

The HotwordDetectionService is part of the Assistant package but runs
with a separate (isolated) uid.
This change follows the pattern of how the Assistant and IME UIDs are
set.

Fix: 194368677
Test: manual - hotword works when another app is using the mic and in
 Auto projection mode
Test: atest HotwordDetectionServiceBasicTest
Change-Id: I76a7930431db226c7e502f8993dfeaa4bc133bea
diff --git a/media/libaudioclient/AudioSystem.cpp b/media/libaudioclient/AudioSystem.cpp
index 88e752b..f1eeaa3 100644
--- a/media/libaudioclient/AudioSystem.cpp
+++ b/media/libaudioclient/AudioSystem.cpp
@@ -1922,6 +1922,14 @@
     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));
+}
+
 status_t AudioSystem::setA11yServicesUids(const std::vector<uid_t>& uids) {
     const sp<IAudioPolicyService>& aps = AudioSystem::get_audio_policy_service();
     if (aps == 0) return PERMISSION_DENIED;