Call.HandoverTo(PhoneAccountHandle, VideoProfileState, Bundle) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
toHandle
definierten 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 PhoneAccount
deklarieren 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 ConnectionService
Personen über ConnectionService#onHandoverFailed(ConnectionRequest, int)
gemeldet.
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.