מצבי הפעולה של SDK
ה-SDK יכול לפעול במצב אחד או יותר, בהתאם לתגובה למודעה שהוא מקבל משרת המודעות.
- מודעה בודדת
- מודעה שאפשר להפעיל בכל שלב כששולחים את ההודעה
start
אלIMAAdsManager
. אין צורך בהפעלה מיוחדת כדי להציג מודעה אחת. - רצף מודעות
- כמה מודעות שמופעלות ברצף כששולחים את ההודעה
start
אלIMAAdsManager
. אין צורך בהפעלה מיוחדת כדי להפעיל בלוק מודעות יחיד. - כללי מודעות
- פלייליסט של הפסקות לפרסומות שמתוזמנות לזמנים מסוימים בתוכן מסוים. המערכת מתעלמת מההודעה
start
במצב של כללי מודעות. יכולות להיות כמה הפסקות לפרסומות שנקבעו בתוך פלייליסט יחיד (לדוגמה, לפני הסרטון, באמצע הסרטון, בסוף הסרטון). פרטים נוספים על ההטמעה זמינים בקטע כללי המודעות בהמשך המאמר.
כללי מודעות
IMA tvOS SDK תומך בפלייליסטים של מודעות אוטומטיות לחלוטין. התכונה הזו מוסיפה הפסקות פרסום לתוכן בהתאם להגדרות ב-Google Ad Manager כשמנהלים את התנועה של המודעות. בנוסף, הוא מפשט מאוד את קוד נגן הווידאו שנדרש לתמיכה בהפסקות למודעות, כולל מודעות לפני הסרטון, באמצע הסרטון ובסוף הסרטון.
- כשמציגים מודעות ב-Ad Manager, אפשר לציין כללים שונים להצגת מודעות כמו 'הצגת הפסקה למודעות תמיד בתחילת התוכן' או 'הצגת הפסקה למודעות למשך דקה אחת כל 30 דקות של תוכן'.
- כשמתקבלת בקשה להצגת מודעות, שרת המודעות יכול להחזיר רשימת השמעה של מודעות. ערכת ה-SDK מעבדת את הפלייליסט ומתזמנת באופן אוטומטי את ההפסקות למודעות שצוינו.
- כשמאתחלים את
AdsManager
, מעבירים אובייקטIMAContentPlayhead
באמצעות הקריאהinitializeWithContentPlayhead:adsRenderingSettings:
. אם אתם משתמשים ב-AVPlayer כדי להציג את התוכן, אתם מעבירים מופע שלIMAAVPlayerContentPlayhead
ל-SDK כשאתם יוצרים אתadDisplayContainer
. האובייקט הזה משמש למעקב אחר התקדמות ההפעלה של התוכן, כך שהפסקות למודעות מוכנסות באופן אוטומטי בזמנים שצוינו ב-Ad Manager.
עם AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
ללא AVPlayer:
- הטמעה של הממשק
IMAContentPlayhead
. - מטמיעים את
currentTime
כדי להחזיר את השעה הנוכחית של נגן הווידאו. - משנים את קריאת האתחול
IMAAdsManager
לשימוש ב-initializeWithContentPlayhead:self
.
- הטמעה של הממשק
- הפרוטוקול IMAAdsManagerDelegate משמש להשהיה ולהמשכה של התוכן בזמן הפסקות הפרסום.
הערה: כשתוכן מסיים את ההפעלה או כשהמשתמש מפסיק את ההפעלה, חשוב לקרוא ל-contentComplete
ב-IMAAdsLoader
כדי לציין ל-SDK שהתוכן סיים את ההפעלה. לאחר מכן, ה-SDK מפעיל את הפסקת הפרסום בסוף הסרטון, אם היא מתוזמנת.
האירוע ALL_ADS_COMPLETED
מופעל כשכל ההפסקות למודעות מסתיימות. בנוסף, חשוב לדעת שמעקב אחרי תוכן מתחיל כשקוראים לשיטה IMAAdsManager
initializeWithContentPlayhead:adsRenderingSettings
, ותמיד צריך לקרוא לשיטה IMAAdsManager
initializeWithContentPlayhead:adsRenderingSettings
לפני הפעלת התוכן.