Call.HandoverTo(PhoneAccountHandle, VideoProfileState, Bundle) 方法

定义

将此项 Call 移交给 ConnectionService 标识者 toHandle

[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

PhoneAccountHandleConnectionService 交接此调用的

videoState
VideoProfileState

指示交接后所需的视频状态(请参阅 STATE_*VideoProfile中定义的常量)。

extras
Bundle

包含要传递给 的额外信息的捆绑包 ConnectionService

属性

注解

将此项 Call 移交给 ConnectionService 标识者 toHandle。 指定的 videoState 指示移交后所需的视频状态。

呼叫交接是正在进行的呼叫从一个应用(即 ConnectionService 转移到另一个应用)的过程。 例如,用户可以选择在视频呼叫应用中继续移动网络呼叫。 通过电话堆栈进行移动网络呼叫称为交接源,视频呼叫应用称为目标。

在考虑移交方案时,调用该设备时,此方法被视为 <em>发起</em> 设备(因为用户从此设备启动移交),另一台设备被视为 <em>接收</em> 设备。

在 em 发起/em> 设备上调用<此方法时,Telecom 框架将绑定到ConnectionService定义的PhoneAccountHandletoHandle并调用ConnectionService#onCreateOutgoingHandoverConnection(PhoneAccountHandle, ConnectionRequest)以通知目标应用已发出请求,以便向目标应用移交调用。<> 应用返回表示交接调用的 Connection 实例。此时,应用应显示 UI 以向用户指示正在处理呼叫交接。

目标应用负责将来自 em 发起/em> 设备的移交请求<与 <em>接收</em> 设备进行通信。<>

当 em 接收/em> 设备上的应用<收到交接请求时,它会调用TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)继续从 <em>发起/em 设备到 <em>receiveing<</em>> 设备的移交过程。<> 此时,em>接收</em> 设备上的目标应用<应显示 UI,以允许用户选择是否要在目标应用中继续调用。

当 em 接收/em> 设备调用TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)的目标应用<时,Telecom 将绑定到其ConnectionService并调用ConnectionService#onCreateIncomingHandoverConnection(PhoneAccountHandle, ConnectionRequest)以通知其移交<请求。> 应用返回表示交接调用的 Connection 实例。

如果 em 接收/em> 设备的用户<接受交接,应用将调用Connection#setActive()以完成移交<>过程;电信将断开原始呼叫的连接。 如果用户拒绝交接,应用将调用Connection#setDisconnected(DisconnectCause)并指定一个DisconnectCauseDisconnectCause#CANCELED指示已取消交接的命令。

电信将只允许从声明PhoneAccount#EXTRA_SUPPORTS_HANDOVER_FROM的交接PhoneAccount。 同样, PhoneAccount 由指定者 toHandle 必须声明 PhoneAccount#EXTRA_SUPPORTS_HANDOVER_TO

交接过程中的错误将报告给 InCallService 通过 Callback#onHandoverFailed(Call, int)。 交接过程中的错误通过向所涉及的 ConnectionService人员 ConnectionService#onHandoverFailed(ConnectionRequest, int)报告。

适用于 . 的 android.telecom.Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于