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 フレームワークは、呼び出しを受け渡す要求が行われたことを宛先アプリに通知するために、定義されたデバイスにバインドtoHandleConnectionServicePhoneAccountHandleして呼び出ConnectionService#onCreateOutgoingHandoverConnection(PhoneAccountHandle, ConnectionRequest)します。> アプリは、ハンドオーバー呼び出しを表すインスタンス Connection を返します。この時点で、アプリは UI を表示して、呼び出しのハンドオーバーが処理中であることをユーザーに示す必要があります。
宛先アプリは、em Initiating/em デバイスから em receiving</em>> デバイスへのハンドオーバー要求を<>通信する役割を<担います。><
em>receiving/em> デバイス上の<アプリがハンドオーバー要求を<受信すると、em Initiating/em デバイスから <em>>receiving</em>> デバイスへのハンドオーバー プロセスを<続行するように<呼び出TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)されます。 この時点で、em>receiving</em> デバイスの<宛先アプリには UI が表示され、ユーザーは宛先アプリで通話を続行するかどうかを選択できます。
em>の宛先アプリ<がデバイス呼び出しTelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)を<受信/em> すると、Telecom はそのデバイスにConnectionServiceバインドされ、ハンドオーバー要求を通知する呼び出ConnectionService#onCreateIncomingHandoverConnection(PhoneAccountHandle, ConnectionRequest)しが行われます。 アプリは、ハンドオーバー呼び出しを表すインスタンス Connection を返します。
em receiving</em> デバイスのユーザーが<ハンドオーバーを受け入れた場合、アプリはハンドオーバー プロセスを完了するために呼び出Connection#setActive()>します。Telecom は元の呼び出しを切断します。 ユーザーが引き渡しを拒否した場合、アプリは呼び出Connection#setDisconnected(DisconnectCause)し、引き渡しが取り消されたことを示す of を指定DisconnectCauseDisconnectCause#CANCELEDします。
通信は、宣言PhoneAccount#EXTRA_SUPPORTS_HANDOVER_FROMする s からのPhoneAccount引き渡しのみを許可します。 同様に、指定された by でPhoneAccounttoHandle宣言PhoneAccount#EXTRA_SUPPORTS_HANDOVER_TOする必要があります。
引き渡しプロセスのエラーは Via にInCallServiceCallback#onHandoverFailed(Call, int)報告されます。 引き渡しプロセスのエラーは、関係 ConnectionServiceする s ConnectionService#onHandoverFailed(ConnectionRequest, int)に報告されます。
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。