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>の例</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();
}
の Java ドキュメントandroid.media.AudioManager.setCommunicationDevice(android.media.AudioDeviceInfo)
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。