Mit der Google Meet Live Sharing Co-Watching API wird die Videokonferenz für mehrere Teilnehmer verwaltet, die sich Inhalte in Ihrer App ansehen oder anhören.
In diesem Leitfaden wird die Implementierung der Co-Watching API erläutert.
CoWatchingClient
erstellen
Erstellen Sie dafür zuerst einen createCoWatchingClient
aus dem AddonSession
, den Sie unter Jetzt starten erstellt haben.
Rufen Sie zum Erstellen eines CoWatchingCient
die Methode AddonSession.createCoWatchingClient
auf und geben Sie einen CoWatchingDelegate
an.
Mit der CoWatchingDelegate
wird deine Anwendung von der Co-Watching API aktualisiert, sobald ein neuer Status verfügbar ist. Es ist zu erwarten, dass Ihre Anwendung beim Aufruf der Methode CoWatchingDelegate.onCoWatchingStateChanged
sofort den neuen Status anwendet.
Das folgende Codebeispiel zeigt, wie die Co-Watching API verwendet wird:
TypeScript
const coWatchingClient = await addonSession.createCoWatchingClient({
activityTitle: "ACTIVITY_TITLE",
onCoWatchingStateQuery() {
// This function should return the current state of your CoWatching activity
return getMyApplicationCoWatchingState();
},
onCoWatchingStateChanged(coWatchingState: CoWatchingState) {
// This function should apply newState to your ongoing CoWatching activity
},
});
Ersetzen Sie ACTIVITY_TITLE durch den Medientitel Ihrer Aktivität.
Aktuellen Status verwalten
Wenn Nutzer Aktionen in Ihrer Anwendung ausführen, werden die bereitgestellten API-Methoden voraussichtlich sofort von Ihrer Anwendung aufgerufen.
Sie sollten diese Methoden nur bei wichtigen Ereignissen aufrufen. Sie müssen sie beispielsweise nicht jedes Mal aufrufen, wenn Ihre App ein Video abspielt. Mit dem CoWatchingDelegate
, den Sie oben erstellt haben, werden unter diesen Umständen aktualisierte Playout-Positionen abgerufen.
So können Sie den Status der gemeinsamen Wiedergabe festlegen:
CoWatchingClient.notifySwitchToMedia
: Der Anruf wird immer dann aufgerufen, wenn sich die aktiv wiedergegebene Medienwiedergabe ändert. Der Nutzer wählt beispielsweise ein neues Video aus oder das nächste Video wird über Autoplay gestartet.CoWatchingClient.notifyPauseState
: Der Aufruf, wenn ein Nutzer die Medienwiedergabe pausiert oder die Pausierung wieder aufhebt.CoWatchingClient.notifySeekToTimestamp
: Aufruf, wenn ein Nutzer die Wiedergabeposition explizit ändert.CoWatchingClient.notifyPlayoutRate
: Der Aufruf, wenn ein Nutzer die Wiedergabegeschwindigkeit auf einen neuen Wert ändert (z. B. 1,25x).CoWatchingClient.notifyBuffering
: Der Aufruf, wenn die Zwischenspeicherung der App eines Nutzers aufgrund von Zwischenspeichern von einem vorherigen Medienwechsel, der Mediensuche oder einer Netzwerküberlastung beginnt.CoWatchingClient.notifyReady
: Rufen Sie auf, wenn die Zwischenspeicherung abgeschlossen ist und die Medien jetzt abgespielt werden können.