Triển khai API cùng xem

API cùng xem chia sẻ trực tiếp trên Google Meet quản lý trải nghiệm trong cuộc họp của nhiều người tham gia xem hoặc nghe nội dung trong ứng dụng của bạn.

Hướng dẫn này giải thích cách triển khai API cùng xem.

Tạo một CoWatchingClient

Để bắt đầu, hãy tạo một createCoWatchingClient từ AddonSession mà bạn đã tạo trong phần Bắt đầu.

Để tạo CoWatchingCient, hãy gọi phương thức AddonSession.createCoWatchingClient và cung cấp một CoWatchingDelegate.

CoWatchingDelegate là cách API cùng xem cập nhật bất cứ khi nào ứng dụng có trạng thái mới. Dự kiến, khi CoWatchingDelegate.onCoWatchingStateChanged được gọi, thì ứng dụng của bạn sẽ ngay lập tức áp dụng trạng thái mới.

Mã mẫu sau đây cho biết cách sử dụng API cùng xem:

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
    },
  });

Thay thế ACTIVITY_TITLE bằng tiêu đề nội dung nghe nhìn của hoạt động.

Quản lý trạng thái hiện tại

Khi người dùng thực hiện hành động trong ứng dụng, ứng dụng đó thường sẽ có gọi ngay các phương thức API được cung cấp.

Bạn chỉ nên gọi các phương thức này để phản hồi các sự kiện quan trọng. Để ví dụ: bạn không cần gọi chúng mỗi khi ứng dụng của bạn chơi video. CoWatchingDelegate mà bạn đã tạo ở trên xử lý việc cập nhật vị trí đấu loại trực tiếp trong những tình huống như vậy.

Bạn có thể kiểm soát trạng thái cùng xem bằng các phương thức sau:

  • CoWatchingClient.notifySwitchToMedia: Gọi bất cứ khi nào nội dung nghe nhìn đang phát thay đổi. Ví dụ: người dùng chọn một video mới hoặc tính năng tự động phát sẽ bắt đầu video tiếp theo.
  • CoWatchingClient.notifyPauseState: Gọi khi người dùng tạm dừng hoặc huỷ tạm dừng nội dung nghe nhìn đang phát.
  • CoWatchingClient.notifySeekToTimestamp: Gọi khi người dùng thay đổi rõ ràng vị trí phát.
  • CoWatchingClient.notifyPlayoutRate: Gọi khi người dùng cập nhật tốc độ phát lên một giá trị mới (ví dụ: 1,25x).
  • CoWatchingClient.notifyBuffering: Gọi khi ứng dụng của người dùng bắt đầu lưu vào bộ đệm do nội dung nghe nhìn trước đó được lưu vào bộ đệm chuyển đổi, tìm kiếm nội dung đa phương tiện hoặc tắc nghẽn mạng.
  • CoWatchingClient.notifyReady: Cuộc gọi khi quá trình lưu vào bộ đệm hoàn tất và nội dung nghe nhìn hiện đã sẵn sàng để phát.