IMA Android SDK תומך בפלייליסטים אוטומטיים לחלוטין של מודעות. כשמפעילים את התכונה הזו, המערכת מוסיפה הפסקות למודעות בתוך התוכן שצוין ב-Google Ad Manager במהלך ניהול הטראפיק של המודעות. הוא גם מפשט מאוד את הקוד של נגן הווידאו, כדי לתמוך בהפסקות למודעות, כולל מודעות בתחילת הסרטון, מודעות באמצע הסרטון ומודעות בסוף הסרטון.
- במהלך ניהול הטראפיק של המודעות ב-Ad Manager ניתן לציין כללי מודעות שונים, למשל "להפעיל תמיד הפסקה למודעה בתחילת התוכן" או "הפעלת הפסקה למודעה למשך דקה אחת בכל 30 דקות".
- כשנשלחת בקשה להצגת מודעה, שרת המודעות יכול להחזיר פלייליסט של מודעות. ה-SDK מעבד את הפלייליסט ומתזמן אוטומטית את ההפסקות למודעות שצוינו.
- מאחר ש-Android משתמש באותו נגן וידאו גם להפעלת מודעות וגם לתוכן,
אם בכוונתך להטמיע כללי מודעות, עליך לשמור את המיקום הנוכחי של התוכן
לאחר הפעלת המודעה. לאחר מכן, עליך לדלג למיקום זה בסיום הצגת המודעה.
חשוב להטמיע את הממשק
VideoAdPlayer
בנגן הווידאו. כך ניתן לוודא שהפסקות למודעות יתווספו באופן אוטומטי בזמנים שצוינו ב-Ad Manager.private boolean playingContent = true; private int contentPosition = -1; private List
callbacks = new ArrayList (); @Override public void addCallback(VideoAdPlayerCallback callback) { callbacks.add(callback); } @Override public void removeCallback(VideoAdPlayerCallback callback) { callbacks.remove(callback); } public void loadContent() playingContent = true; load(CONTENT_URL); } @Override public void loadAd(String mediaUrl) { playingContent = false; load(mediaUrl); } public void pauseContent() { savePosition(); pause(); } @Override public void pauseAd() { pause(); } private void pause() { myVideoView.pause(); for (VideoAdPlayerCallback callback : callbacks) { callback.onPause(); } } public void resumeContent() { loadContent(); if (contentPosition > 0) { restorePosition(); } resume(); } @Override public void resumeAd() { resume(); } private void resume() { myVideoView.start(); for (VideoAdPlayerCallback callback : callbacks) { callback.onResume(); } } public void savePosition() { contentPosition = myVideoView.getCurrentPosition(); } public void restorePosition() { myVideoView.seekTo(contentPosition); } - האירועים
CONTENT_PAUSE_REQUESTED
ו-CONTENT_RESUME_REQUESTED
משמשים להשהיה ולחידוש התוכן כשההפסקות למודעות מוצגות. לפרטים נוספים על האירועים האלה, עיינו במסמכי ה-API הרלוונטיים.
הערה: לאחר סיום ההפעלה של התוכן או
לאחר שהמשתמש הפסיק את ההפעלה, חשוב לקרוא לפונקציה
AdsLoader.contentcomplete
כדי לאותת ל-SDK שהתוכן הושלם. לאחר מכן, ה-SDK מפעיל את ההפסקה למודעה בסוף הסרטון, אם תוזמנה הפסקה כזו. האירוע
ALL_ADS_COMPLETED
גדל כשמוצגות כל ההפסקות
למודעות. נוסף לכך, מעקב תוכן מתחיל כאשר מתבצעת קריאה אל init()
וצריך תמיד להתקשר אל init()
לפני הפעלת התוכן.