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()
לפני הפעלת תוכן.