במדריך הזה מוסבר איך לבצע פעולות על סמך מצב אגירת הנתונים של המודעות.
שימוש באירועים במאגר נתונים זמני באפליקציה
אפשר להשתמש בשיטות הענקת הגישה הבאות ב-IMAAdsManagerDelegate
כדי להוסיף לאפליקציה אינדיקטור פעילות כשהמודעות מושהות כדי להיטמע בזיכרון:
- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager
: מתבצעת קריאה כשמודעה שכבר התחילה לפעול, נפסקת למאגר הנתונים הזמני.- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime
: נקרא כמאגר אחסון זמני של מודעות. המערכת קוראת ל-method הזו שוב ושוב כל עוד המודעה נמצאת באחסון במטמון.- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager
: הקריאה הזו מתבצעת כשהמודעה הנוכחית נשמרת במטמון במידה מספקת, כך שההפעלה שלה לא צפויה לחרוג מהמטמון.
דוגמה
כל התוספות מבוססות על הדוגמה המתקדמת ל-IMA SDK (גם ל-iOS וגם ל-tvOS):
@interface VideoViewController ()... @end @implementation VideoViewController ... - (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager { // Show your activity indicator above the video player - ad playback has // stopped to buffer. } - (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager { // Hide your activity indicator - as playback resumes. }
שאלות נפוצות
האם אפשר להציג אינדיקטור פעילות לפני שהמודעה מתחילה לפעול?
כן, אבל מומלץ להסתמך על שיטות הענקת גישה שונות בתרחיש לדוגמה הזה. אפשר להציג את אינדיקטור הפעילות כשמתקשרים ל-[adsManager start]
, ולהסתיר את אינדיקטור הפעילות כשמקליטים את kIMAAdEvent_STARTED
ב-- (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event
.