Call.HandoverTo(PhoneAccountHandle, VideoProfileState, Bundle) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
によってtoHandle
識別される へのこのCall
のハンドオーバーをConnectionService
開始します。
[Android.Runtime.Register("handoverTo", "(Landroid/telecom/PhoneAccountHandle;ILandroid/os/Bundle;)V", "", ApiSince=28)]
public void HandoverTo (Android.Telecom.PhoneAccountHandle? toHandle, Android.Telecom.VideoProfileState videoState, Android.OS.Bundle? extras);
[<Android.Runtime.Register("handoverTo", "(Landroid/telecom/PhoneAccountHandle;ILandroid/os/Bundle;)V", "", ApiSince=28)>]
member this.HandoverTo : Android.Telecom.PhoneAccountHandle * Android.Telecom.VideoProfileState * Android.OS.Bundle -> unit
パラメーター
- toHandle
- PhoneAccountHandle
PhoneAccountHandle
ConnectionService
この呼び出しを引き渡す の 。
- videoState
- VideoProfileState
ハンドオーバー後に必要なビデオの状態を示します (でVideoProfile
定義されている定数をSTATE_*
参照)。
- extras
- Bundle
に渡される追加情報を含むバンドル ConnectionService
- 属性
注釈
によってtoHandle
識別される へのこのCall
のハンドオーバーをConnectionService
開始します。 指定された videoState は、ハンドオーバー後の目的のビデオ状態を示します。
通話の引き継ぎは、進行中の通話が 1 つのアプリ (つまり ConnectionService
、別のアプリ) から転送されるプロセスです。 たとえば、ユーザーは、ビデオ通話アプリでモバイル ネットワーク呼び出しを続行することを選択できます。 テレフォニー スタック経由のモバイル ネットワーク呼び出しは、引き継ぎのソースと呼ばれ、ビデオ通話アプリは宛先と呼ばれます。
ハンドオーバー シナリオを検討する場合、このメソッドが呼び出されるデバイスは em initiating/em> デバイスと見な<>され (ユーザーがこのデバイスからハンドオーバーを開始するため)、もう一方のデバイスは em>receiving</em> デバイスと見なされます<。<
em initiating/em> デバイスで<>このメソッドが呼び出されると、Telecom フレームワークは によって定義された toHandle
PhoneAccountHandle
にConnectionService
バインドし、 を呼び出ConnectionService#onCreateOutgoingHandoverConnection(PhoneAccountHandle, ConnectionRequest)
して、呼び出しを引き渡す要求が行われたことを宛先アプリに通知します。< アプリは、ハンドオーバー呼び出しを表す の Connection
インスタンスを返します。この時点で、アプリは UI を表示して、呼び出しのハンドオーバーが処理中であることをユーザーに示す必要があります。
宛先アプリは、em initiating/em デバイスから em receiving</em>> デバイスへの引き渡し要求を><通信する役割を<担います。><
em>receiving/em> デバイス上の<アプリがハンドオーバー要求を<受信すると、 が呼び出TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)
され、em>initiating/em> デバイスから <em>receiving</em> デバイスへの<引き渡しプロセスが<続行されます。 この時点で、em>receiving</em> デバイス上の<宛先アプリに UI が表示され、ユーザーは宛先アプリで通話を続行するかどうかを選択できるようになります。
em>receiving/em> デバイス上の<宛先アプリが を<呼び出TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)
すと、Telecom は にConnectionService
バインドし、 を呼び出ConnectionService#onCreateIncomingHandoverConnection(PhoneAccountHandle, ConnectionRequest)
して引き渡し要求を通知します。 アプリは、ハンドオーバー呼び出しを表す の Connection
インスタンスを返します。
em receiving</em> デバイスのユーザーが<引き渡しを受け入れた場合、アプリは を呼び出Connection#setActive()
して引き渡しプロセスを完了>します。Telecom は元の呼び出しを切断します。 ユーザーがハンドオーバーを拒否した場合、アプリは を呼び出Connection#setDisconnected(DisconnectCause)
し、 を指定DisconnectCause
DisconnectCause#CANCELED
して、引き渡しが取り消されたことを示します。
Telecom では、 を宣言PhoneAccount#EXTRA_SUPPORTS_HANDOVER_FROM
する からのPhoneAccount
ハンドオーバーのみが許可されます。 同様に、 でtoHandle
指定された は PhoneAccount
を宣言PhoneAccount#EXTRA_SUPPORTS_HANDOVER_TO
する必要があります。
引き継ぎプロセスのエラーは、 を介して Callback#onHandoverFailed(Call, int)
にInCallService
報告されます。 引き継ぎプロセスのエラーは、 を介してConnectionService#onHandoverFailed(ConnectionRequest, int)
関係ConnectionService
する に報告されます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。