הטמעת ממשק ה-API לצפייה משותפת

ממשק ה-API של Google Meet לצפייה משותפת מאפשר לנהל את חוויית הפגישה של כמה משתתפים שצופים בתוכן באפליקציה או מאזינים לו.

במדריך הזה מוסבר איך להטמיע את ה-API של צפייה משותפת.

צור CoWatchingClient

כדי להתחיל, יוצרים createCoWatchingClient מתוך AddonSession שיצרתם בקטע תחילת העבודה.

כדי ליצור CoWatchingCient, קוראים ל-method AddonSession.createCoWatchingClient ומספקים CoWatchingDelegate.

באמצעות CoWatchingDelegate ה-API של צפייה משותפת מעדכן את האפליקציה בכל פעם שמצב חדש זמין. סביר להניח שכאשר מתבצעת קריאה ל-method CoWatchingDelegate.onCoWatchingStateChanged, האפליקציה תחיל באופן מיידי את המצב החדש.

דוגמת הקוד הבאה מראה איך להשתמש ב-API של צפייה משותפת:

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

מחליפים את ACTIVITY_TITLE בשם המדיה של הפעילות.

ניהול המצב הנוכחי

כשמשתמשים מבצעים פעולה באפליקציה, היא צפויה לבצע קריאה מיידית ל-methods של ה-API.

כדאי להפעיל את השיטות האלה רק בתגובה לאירועים משמעותיים. לדוגמה, אין צורך להתקשר אליהם בכל פעם שהאפליקציה מקדמת סרטון. השדה CoWatchingDelegate שיצרתם למעלה מטפל בקבלת מיקומי הפעלה מעודכנים בנסיבות האלה.

אתם יכולים לשלוט במצב הצפייה המשותפת בשיטות הבאות:

  • CoWatchingClient.notifySwitchToMedia: התקשרות בכל פעם שמדיה שמופעלת באופן פעיל משתנה. לדוגמה, המשתמש בוחר סרטון חדש, או שההפעלה האוטומטית מפעילה את הסרטון הבא.
  • CoWatchingClient.notifyPauseState: שיחה כשהמשתמש משהה או מבטל את ההשהיה של המדיה המופעלת.
  • CoWatchingClient.notifySeekToTimestamp: קריאה כשמשתמש משנה באופן מפורש את מיקום ההפעלה.
  • CoWatchingClient.notifyPlayoutRate: קריאה כשמשתמש מעדכן את מהירות ההפעלה לערך חדש (למשל, 1.25x).
  • CoWatchingClient.notifyBuffering: התקשרות כשאפליקציה של משתמש מתחילה בתהליך אגירת נתונים בגלל אגירת נתונים ממתג מדיה קודם, חיפוש מדיה או עומס ברשת.
  • CoWatchingClient.notifyReady: התקשרות כשהאחסון במאגר הנתונים הזמני הסתיים והמדיה מוכנה להפעלה.