Triển khai API cùng xem

API cùng xem của tính năng Chia sẻ trực tiếp trên Google Meet quản lý trải nghiệm trong cuộc họp khi nhiều người tham gia cùng 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 ứng dụng của bạn bất cứ khi nào ứng dụng có trạng thái mới. Theo dự kiến, khi phương thức CoWatchingDelegate.onCoWatchingStateChanged được gọi, ứ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 thao tác trong ứng dụng, ứng dụng sẽ gọi ngay các phương thức API đã 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 các phương thức này mỗi khi ứng dụng tiến một video đang phát. CoWatchingDelegate mà bạn đã tạo ở trên sẽ xử lý việc cập nhật vị trí phát trong những trường hợp 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ẽ khởi động 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 rõ ràng thay đổi 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 việc lưu vào bộ đệm từ công tắc chuyển nội dung đa phương tiện, tìm kiếm nội dung đa phương tiện hoặc nghẽn mạng trước đó.
  • CoWatchingClient.notifyReady: Cuộc gọi khi bộ đệm hoàn tất và nội dung nghe nhìn hiện đã sẵn sàng để phát.