diff options
Diffstat (limited to 'android/media/AudioDeviceInfo.java')
-rw-r--r-- | android/media/AudioDeviceInfo.java | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/android/media/AudioDeviceInfo.java b/android/media/AudioDeviceInfo.java index 1b89c966..1a97b6ba 100644 --- a/android/media/AudioDeviceInfo.java +++ b/android/media/AudioDeviceInfo.java @@ -16,9 +16,12 @@ package android.media; +import android.annotation.IntDef; import android.annotation.NonNull; import android.util.SparseIntArray; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; import java.util.TreeSet; /** @@ -120,6 +123,57 @@ public final class AudioDeviceInfo { */ public static final int TYPE_USB_HEADSET = 22; + /** @hide */ + @IntDef(flag = false, prefix = "TYPE", value = { + TYPE_BUILTIN_EARPIECE, + TYPE_BUILTIN_SPEAKER, + TYPE_WIRED_HEADSET, + TYPE_WIRED_HEADPHONES, + TYPE_BLUETOOTH_SCO, + TYPE_BLUETOOTH_A2DP, + TYPE_HDMI, + TYPE_DOCK, + TYPE_USB_ACCESSORY, + TYPE_USB_DEVICE, + TYPE_USB_HEADSET, + TYPE_TELEPHONY, + TYPE_LINE_ANALOG, + TYPE_HDMI_ARC, + TYPE_LINE_DIGITAL, + TYPE_FM, + TYPE_AUX_LINE, + TYPE_IP } + ) + @Retention(RetentionPolicy.SOURCE) + public @interface AudioDeviceTypeOut {} + + /** @hide */ + /*package*/ static boolean isValidAudioDeviceTypeOut(int type) { + switch (type) { + case TYPE_BUILTIN_EARPIECE: + case TYPE_BUILTIN_SPEAKER: + case TYPE_WIRED_HEADSET: + case TYPE_WIRED_HEADPHONES: + case TYPE_BLUETOOTH_SCO: + case TYPE_BLUETOOTH_A2DP: + case TYPE_HDMI: + case TYPE_DOCK: + case TYPE_USB_ACCESSORY: + case TYPE_USB_DEVICE: + case TYPE_USB_HEADSET: + case TYPE_TELEPHONY: + case TYPE_LINE_ANALOG: + case TYPE_HDMI_ARC: + case TYPE_LINE_DIGITAL: + case TYPE_FM: + case TYPE_AUX_LINE: + case TYPE_IP: + return true; + default: + return false; + } + } + private final AudioDevicePort mPort; AudioDeviceInfo(AudioDevicePort port) { @@ -127,6 +181,14 @@ public final class AudioDeviceInfo { } /** + * @hide + * @return The underlying {@link AudioDevicePort} instance. + */ + public AudioDevicePort getPort() { + return mPort; + } + + /** * @return The internal device ID. */ public int getId() { |