diff options
author | 2023-12-28 22:53:57 +0000 | |
---|---|---|
committer | 2023-12-28 22:53:57 +0000 | |
commit | 44a679e5e041b0ba8d4f1a5609da534afe85965c (patch) | |
tree | c3041b21eb18066573f8f89d5ca0aa6ac77b2f94 | |
parent | e495ee01f14264c379c94f1e347d7643e6daecf9 (diff) | |
parent | 1939ee374f4f51db07453fd7ec7dcf88e9a752f3 (diff) |
Merge changes from topic "cuttlefish_aidl_audio-3" into main
* changes:
AudioService: check for AIDL service availbility
Enable AIDL HAL support in the framework
-rw-r--r-- | media/java/android/media/AudioHalVersionInfo.java | 5 | ||||
-rw-r--r-- | services/core/java/com/android/server/audio/AudioService.java | 14 |
2 files changed, 11 insertions, 8 deletions
diff --git a/media/java/android/media/AudioHalVersionInfo.java b/media/java/android/media/AudioHalVersionInfo.java index 985a7584ffe2..efb33950022c 100644 --- a/media/java/android/media/AudioHalVersionInfo.java +++ b/media/java/android/media/AudioHalVersionInfo.java @@ -75,11 +75,10 @@ public final class AudioHalVersionInfo implements Parcelable, Comparable<AudioHa /** * List of all valid Audio HAL versions. This list need to be in sync with sAudioHALVersions - * defined in frameworks/av/media/libaudiohal/FactoryHalHidl.cpp. + * defined in frameworks/av/media/libaudiohal/FactoryHal.cpp. */ - // TODO: add AIDL_1_0 with sAudioHALVersions. public static final @NonNull List<AudioHalVersionInfo> VERSIONS = - List.of(HIDL_7_1, HIDL_7_0, HIDL_6_0, HIDL_5_0, HIDL_4_0); + List.of(AIDL_1_0, HIDL_7_1, HIDL_7_0, HIDL_6_0, HIDL_5_0, HIDL_4_0); private static final String TAG = "AudioHalVersionInfo"; private AudioHalVersion mHalVersion = new AudioHalVersion(); diff --git a/services/core/java/com/android/server/audio/AudioService.java b/services/core/java/com/android/server/audio/AudioService.java index b555a52fe720..39d9b45bb22d 100644 --- a/services/core/java/com/android/server/audio/AudioService.java +++ b/services/core/java/com/android/server/audio/AudioService.java @@ -12053,12 +12053,16 @@ public class AudioService extends IAudioService.Stub public @Nullable AudioHalVersionInfo getHalVersion() { for (AudioHalVersionInfo version : AudioHalVersionInfo.VERSIONS) { try { - // TODO: check AIDL service. String versionStr = version.getMajorVersion() + "." + version.getMinorVersion(); - HwBinder.getService( - String.format("android.hardware.audio@%s::IDevicesFactory", versionStr), - "default"); - return version; + final String aidlStr = "android.hardware.audio.core.IModule/default"; + final String hidlStr = String.format("android.hardware.audio@%s::IDevicesFactory", + versionStr); + if (null != ServiceManager.checkService(aidlStr)) { + return version; + } else { + HwBinder.getService(hidlStr, "default"); + return version; + } } catch (NoSuchElementException e) { // Ignore, the specified HAL interface is not found. } catch (RemoteException re) { |