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
否則為 。
- 屬性
備註
選取應該用於通訊使用案例的音訊裝置,例如語音或視訊通話。 語音或視訊聊天應用程式可以使用此方法來選取與平臺預設選取的音訊裝置不同。
裝置選取範圍會在所#getAvailableCommunicationDevices()
傳回的裝置之間表示為 AudioDeviceInfo
。 請注意,只能指定接收角色中的裝置(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 li<#startBluetoothSco()
><>#setSpeakerphoneOn(boolean)
#stopBluetoothSco()
<>/ul><h4>範例</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 屬性授權中所述的詞彙使用。