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 cuộc họp của nhiều người tham gia khi họ 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 một 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. 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 hành động trong ứng dụng, ứng dụng sẽ 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 các lệnh 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 nhận thông tin cập nhật về vị trí phát trong các 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ẽ bắt đầu xem video tiếp theo.
  • CoWatchingClient.notifyPauseState: Gọi khi người dùng tạm dừng hoặc tiếp tục phát nội dung nghe nhìn.
  • 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 thành 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 tải vào bộ đệm do quá trình lưu vào bộ đệm từ công tắc nội dung đa phương tiện trước đó, tìm kiếm nội dung đa phương tiện hoặc tình trạng nghẽn mạng.
  • CoWatchingClient.notifyReady: Gọi khi quá trình lưu vào bộ đệm hoàn tất và nội dung nghe nhìn đã sẵn sàng để phát.