La API de visualización en compañía de Compartir en vivo de Google Meet administra la experiencia de la reunión de varios participantes que miran o escuchan contenido en tu app.
En esta guía, se explica cómo implementar la API de Co-Watching.
Cómo crear un CoWatchingClient
Para comenzar, crea un createCoWatchingClient
a partir del AddonSession
que creaste en Comenzar.
Para crear un CoWatchingCient
, llama al método AddonSession.createCoWatchingClient
y proporciona un CoWatchingDelegate
.
El CoWatchingDelegate
es la manera en que la API de visualización en compañía actualiza tu aplicación cada vez que tiene un nuevo estado disponible. Se espera que, cuando se llama al método CoWatchingDelegate.onCoWatchingStateChanged
, tu aplicación aplique de inmediato el estado nuevo.
En el siguiente ejemplo de código, se muestra cómo usar la API de Co-Watching:
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
},
});
Reemplaza ACTIVITY_TITLE por el título multimedia de tu actividad.
Administrar el estado actual
Cuando los usuarios realizan acciones en tu aplicación, se espera que esta llame inmediatamente a los métodos de la API proporcionados.
Solo debes llamar a estos métodos en respuesta a eventos significativos. Por ejemplo, no es necesario que los llames cada vez que tu app avanza en un video en reproducción. El CoWatchingDelegate
que creaste anteriormente controla la obtención de posiciones de reproducción actualizadas en estas circunstancias.
Puedes controlar el estado de visualización en compañía con estos métodos:
CoWatchingClient.notifySwitchToMedia
: Llama cada vez que cambie el contenido multimedia que se reproduce de forma activa. Por ejemplo, el usuario selecciona un video nuevo o la reproducción automática inicia el siguiente.CoWatchingClient.notifyPauseState
: Llama cuando un usuario pausa o reanuda la reproducción de contenido multimedia.CoWatchingClient.notifySeekToTimestamp
: Llama cuando un usuario cambia explícitamente la posición de reproducción.CoWatchingClient.notifyPlayoutRate
: Realiza una llamada cuando un usuario actualiza la velocidad de reproducción a un nuevo valor (por ejemplo, 1.25x).CoWatchingClient.notifyBuffering
: Llama cuando la app de un usuario comienza a almacenar en búfer debido al almacenamiento en búfer de un cambio de contenido multimedia anterior, una búsqueda de contenido multimedia o una congestión de la red.CoWatchingClient.notifyReady
: Llama cuando se completa el almacenamiento en búfer y el contenido multimedia está listo para reproducirse.