Freigeben über


Call.HandoverTo(PhoneAccountHandle, VideoProfileState, Bundle) Methode

Definition

Initiiert eine Übergabe dieser Call an die ConnectionService identifizierte .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

Parameter

toHandle
PhoneAccountHandle

PhoneAccountHandle von der ConnectionService Übergabe dieses Aufrufs.

videoState
VideoProfileState

Gibt den gewünschten Videozustand nach der Übergabe an (siehe die STATE_* in VideoProfile) definierten Konstanten).

extras
Bundle

Bündel mit zusätzlichen Informationen, die an die ConnectionService

Attribute

Hinweise

Initiiert eine Übergabe dieser Call an die ConnectionService identifizierte .toHandle Der angegebene videoState gibt den gewünschten Videozustand nach der Übergabe an.

Eine Anrufübergabe ist der Prozess, bei dem ein fortlaufender Anruf von einer App (d. h. ConnectionService zu einer anderen App) übertragen wird. Der Benutzer kann z. B. einen Mobilfunkanruf in einer Videoanruf-App fortsetzen. Der Mobilfunkanruf über den Telefoniestapel wird als Quelle der Übergabe bezeichnet, und die Videoanruf-App wird als Ziel bezeichnet.

Bei Der Betrachtung eines Übergabeszenarios gilt das Gerät, auf dem diese Methode aufgerufen wird, <als das Em-Initiieren></Em-Gerät> (da der Benutzer die Übergabe von diesem Gerät initiiert), und das andere Gerät wird als Em-Empfangs<<>-/Em-Gerät> betrachtet.

Wenn diese Methode auf dem <Em-Initiieren></Em-Gerät> aufgerufen wird, bindet das Telecom-Framework an denPhoneAccountHandle ConnectionService toHandledefinierten und aufgerufenen AufrufConnectionService#onCreateOutgoingHandoverConnection(PhoneAccountHandle, ConnectionRequest), um die Ziel-App darüber zu informieren, dass eine Anforderung zum Übergeben eines Aufrufs an sie vorgenommen wurde. Die App gibt eine Instanz zurück, die Connection den Übergabeaufruf darstellt. An diesem Punkt sollte die App die Benutzeroberfläche anzeigen, um dem Benutzer anzuzeigen, dass eine Anrufübergabe ausgeführt wird.

Die Ziel-App ist für die Kommunikation der Übergabeanforderung vom <Em-Initiieren<>/Em-Gerät> an das <Empfangen></Em-Gerät> verantwortlich.

Wenn die App auf dem <Em-Empfangs<>-/Em-Gerät> die Übergabeanforderung empfängt, ruft TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle) sie auf, den Übergabevorgang vom <Em-Initiieren<>/Em-Gerät an das <Em-Empfangs><-/Em-Gerät>> fortzusetzen. An diesem Punkt sollte die Ziel-App auf dem Empfangen</Em-Gerät> die <>Benutzeroberfläche anzeigen, damit der Benutzer auswählen kann, ob er seinen Anruf in der Ziel-App fortsetzen möchte.

Wenn die Ziel-App auf dem <Em-Empfang<>/Em-Gerät> Aufrufe empfängtTelecomManager#acceptHandover(Uri, int, PhoneAccountHandle), bindet Telecom an seinen ConnectionService Anruf und ruft ConnectionService#onCreateIncomingHandoverConnection(PhoneAccountHandle, ConnectionRequest) sie an, um sie über die Übergabeanforderung zu informieren. Die App gibt eine Instanz zurück, die Connection den Übergabeaufruf darstellt.

Wenn der Benutzer des <Em-Empfangs<>-/Em-Geräts> den Übergabevorgang akzeptiert, ruft Connection#setActive() die App den Übergabevorgang ab; Telecom trennt den ursprünglichen Anruf. Wenn der Benutzer die Übergabe ablehnt, ruft die App auf Connection#setDisconnected(DisconnectCause) und gibt einen DisconnectCause an, der DisconnectCause#CANCELED angibt, dass die Übergabe abgebrochen wurde.

Telecom erlaubt nur Übergaben von S, die PhoneAccountdeklarieren PhoneAccount#EXTRA_SUPPORTS_HANDOVER_FROM. Auf ähnliche Weise muss die PhoneAccount angegebene durch toHandle deklarieren PhoneAccount#EXTRA_SUPPORTS_HANDOVER_TO.

Fehler im Übergabevorgang werden der InCallService Via Callback#onHandoverFailed(Call, int)gemeldet. Fehler im Übergabevorgang werden den beteiligten ConnectionServicePersonen über ConnectionService#onHandoverFailed(ConnectionRequest, int)gemeldet.

Java-Dokumentation für android.telecom.Call.handoverTo(android.telecom.PhoneAccountHandle, int, android.os.Bundle).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: