AudioManager.SetCommunicationDevice(AudioDeviceInfo) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
음성 또는 영상 통화와 같은 통신 사용 사례에 사용해야 하는 오디오 장치를 선택합니다.
[Android.Runtime.Register("setCommunicationDevice", "(Landroid/media/AudioDeviceInfo;)Z", "GetSetCommunicationDevice_Landroid_media_AudioDeviceInfo_Handler", ApiSince=31)]
public virtual bool SetCommunicationDevice (Android.Media.AudioDeviceInfo device);
[<Android.Runtime.Register("setCommunicationDevice", "(Landroid/media/AudioDeviceInfo;)Z", "GetSetCommunicationDevice_Landroid_media_AudioDeviceInfo_Handler", ApiSince=31)>]
abstract member SetCommunicationDevice : Android.Media.AudioDeviceInfo -> bool
override this.SetCommunicationDevice : Android.Media.AudioDeviceInfo -> bool
매개 변수
- device
- AudioDeviceInfo
요청된 오디오 디바이스입니다.
반환
true
요청이 수락 false
되었으면 그렇지 않습니다.
- 특성
설명
음성 또는 영상 통화와 같은 통신 사용 사례에 사용해야 하는 오디오 장치를 선택합니다. 이 방법은 음성 또는 비디오 채팅 애플리케이션에서 플랫폼에서 기본적으로 선택한 것과 다른 오디오 장치를 선택하는 데 사용할 수 있습니다.
디바이스 선택은 .에서 반환된 AudioDeviceInfo
디바이스 중 하나로 표현됩니다 #getAvailableCommunicationDevices()
. 싱크 역할의 디바이스(AKA 출력 디바이스, 참조 AudioDeviceInfo#isSink()
)만 지정할 수 있습니다. 일치하는 원본 디바이스는 플랫폼에서 자동으로 선택됩니다.
요청 중인 애플리케이션 프로세스가 사용 중이거나 디바이스 연결이 끊어지거나 호출될 때까지 #clearCommunicationDevice
선택 영역이 활성화됩니다. 따라서 호출이 종료되거나 요청 활동 또는 서비스가 중지되거나 제거될 때 애플리케이션에서 요청을 지우는 것이 중요합니다.
여러 애플리케이션의 동시 요청의 경우 현재 오디오 모드를 제어하는 애플리케이션에 우선 순위가 지정됩니다(참조 #setMode(int)
). 모드 또는 모드 #MODE_IN_COMMUNICATION
#MODE_IN_CALL
를 선택한 최신 애플리케이션입니다. MODE_IN_CALL
주 전화 통신 애플리케이션에서 사용 권한이 Manifest.permission#MODIFY_PHONE_STATE
있는 경우에만 선택할 수 있습니다.
요청된 디바이스를 현재 사용할 수 없는 경우 요청이 거부되고 메서드가 false를 반환합니다.
이 API는 사용되지 않는 다음 API를 대체합니다. <ul<>li#startBluetoothSco()
><li#stopBluetoothSco()
#setSpeakerphoneOn(boolean)
><<>/ul<>h4>Example</h4>
아래 예제에서는 스피커폰 모드를 사용하거나 사용하지 않도록 설정하는 방법을 보여 줍니다.
// Get an AudioManager instance
AudioManager audioManager = Context.getSystemService(AudioManager.class);
AudioDeviceInfo speakerDevice = null;
List<AudioDeviceInfo> devices = audioManager.getAvailableCommunicationDevices();
for (AudioDeviceInfo device : devices) {
if (device.getType() == AudioDeviceInfo.TYPE_BUILTIN_SPEAKER) {
speakerDevice = device;
break;
}
}
if (speakerDevice != null) {
// Turn speakerphone ON.
boolean result = audioManager.setCommunicationDevice(speakerDevice);
if (!result) {
// Handle error.
}
// Turn speakerphone OFF.
audioManager.clearCommunicationDevice();
}
에 대한 android.media.AudioManager.setCommunicationDevice(android.media.AudioDeviceInfo)
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.