CoWatchingHandler

@PublicApi
interface CoWatchingHandler


Uzaktan birlikte izleme güncellemelerini işlemek ve yerel medyanın durumunu sorgulamak için eklenti uygulaması tarafından sağlanan geri çağırmalar.

Özet

Genel işlevler

Unit

Toplantıdaki başka bir katılımcıya ait birlikte izleme durumu güncellemesini uygular.

Optional<QueriedCoWatchingState!>!

Yerel birlikte izleme etkinliğinin mevcut durumunu alır.

Genel işlevler

onCoWatchingStateChanged

fun onCoWatchingStateChanged(state: CoWatchingState!): Unit

Toplantıdaki başka bir katılımcıya ait birlikte izleme durumu güncellemesini uygular.

Not: Bu, yerel değişikliklere göre çağrılmaz.

Uygulama örneği:

// Handle transition to new video.
if (!newState.mediaId().equals(this.videoPlayer.videoUrl)) {
  this.videoPlayer.loadVideo(newState.mediaId());
}

// Only adjust the local video playout if it is sufficiently diverged from the timestamp in the
// applied update.
if (newState
        .mediaPlayoutPosition()
        .minus(this.videoPlayer.videoTimestamp)
        .compareTo(Duration.ofMillis(500))
    > 0) {
  this.videoPlayer.seek(newState.mediaPlayoutPosition());
}

// Update pause state if necessary.
if (newState.playbackState().equals(PLAY) && this.videoPlayer.isPaused) {
  this.videoPlayer.unpause();
} else if (newState.playbackState().equals(PAUSE) && !this.videoPlayer.isPaused) {
  this.videoPlayer.pause();
}
Parametreler
state: CoWatchingState!

oynatıcıya uygulanacak yeni CoWatchingState

onStateQuery

fun onStateQuery(): Optional<QueriedCoWatchingState!>!

Yerel birlikte izleme etkinliğinin mevcut durumunu alır.

Bu dize düzenli olarak çağrılacağından etkili olacak (ör. <100 ms) yazılmalıdır.

Uygulama örneği:

QueriedCoWatchingState myCurrentPlaybackState = QueriedCoWatchingState
    .of(/* mediaPlayoutPosition= *{/} this.videoPlayer.videoTimestamp);
return Optional.of(myCurrentPlaybackState);
İlerlemeler
Optional<QueriedCoWatchingState!>!

Optional/QueriedCoWatchingState birlikte izleme özelliğinin mevcut durumunu açıklıyor. Boş Optional, devam eden bir birlikte izleme etkinliği olmadığını gösterir.