ערכות ה-SDK של IMA מאפשרות לשלב בקלות מודעות מולטימדיה באתרים ובאפליקציות שלכם. ערכות ה-SDK של IMA יכולות לבקש מודעות מכל שרת מודעות שתואם ל-VAST ולנהל את ההפעלה של המודעות באפליקציות. באמצעות ערכות ה-SDK של IMA DAI, האפליקציות שולחות בקשה לשידור של מודעת וידאו ותוכן וידאו – VOD או תוכן בשידור חי. לאחר מכן, ה-SDK מחזיר שידור וידאו משולב, כך שלא תצטרכו לנהל את המעבר בין סרטון המודעה לסרטון התוכן באפליקציה.
בחירת פתרון ה-DAI הרצוי
מודעות דינמיות ב-Pod
במדריך הזה נסביר איך לשלב את IMA DAI SDK באפליקציית נגן וידאו פשוטה. אם אתם רוצים לראות או להיעזר בשילוב לדוגמה שכבר הושלם, תוכלו להוריד את PodServingExample מ-GitHub.
סקירה כללית על הטמעת מודעות דינמיות (DAI) ב-IMA
הטמעת IMA DAI כוללת ארבעה רכיבים עיקריים של SDK, כפי שמתואר במדריך הזה:
IMAAdDisplayContainer
– אובייקט קונטיינר שממוקם מעל אלמנט ההפעלה של הסרטון ומכיל את רכיבי ממשק המשתמש של המודעה.IMAAdsLoader
– אובייקט שמבקש שידורים ומטפל באירועים שמופעל על ידי אובייקטים של תגובות לבקשות של שידורים. צריך ליצור רק אובייקט אחד של Ads Loader, שאפשר לעשות בו שימוש חוזר במהלך כל חיי האפליקציה.IMAStreamRequest
– הערך יכול להיותIMAPodVODStreamRequest
אוIMAPodStreamRequest
.IMAStreamManager
– אובייקט שמטפל בזרמים של הטמעת מודעות דינמיות ובאינטראקציות עם הקצה העורפי של DAI. מנהל הסטרימינג מטפל גם בפניות מעקב (pings) ומעביר אירועי סטרימינג ומודעות לבעלי התוכן הדיגיטלי.
בנוסף, כדי להפעיל שידורים של מודעות ב-Pod, צריך להטמיע מתבצע VTP בהתאמה אישית. הטיפול המותאם אישית של VTP שולח את מזהה הסטרימינג לשותף הטכני של הווידאו (VTP) יחד עם כל המידע הנוסף שנחוץ לו כדי להחזיר מניפסט של סטרימינג שמכיל גם תוכן וגם מודעות מודבקות. ב-VTP יתקבלו הוראות להטמעת הטיפול המותאם אישית ב-VTP.
דרישות מוקדמות
לפני שמתחילים, צריך את הדברים הבאים:
- Xcode מגרסה 13 ואילך
- CocoaPods (מומלץ), Swift Package Manager או עותק שהורדתם של IMA DAI SDK ל-iOS
צריך גם את הפרמטרים שמשמשים לשליחת בקשה לסטרימינג מ-IMA SDK.
פרמטרים של שידורים חיים | |
---|---|
קוד רשת |
קוד הרשת של חשבון Ad Manager 360. דוגמה: 51636543
|
מפתח מותאם אישית של נכס |
מפתח הנכס המותאם אישית שמזהה את אירוע הצגת המודעות ב-Pod ב-Ad Manager 360. הקוד הזה יכול להיווצר על ידי הכלי לעיבוד המניפסט או על ידי שותף צד שלישי להצגת מודעות ב-Pod. דוגמה: google-sample
|
פרמטרים של סטרימינג של VOD | |
קוד רשת |
קוד הרשת של חשבון Ad Manager 360. דוגמה: 51636543
|
יצירת פרויקט חדש ב-Xcode
ב-Xcode, יוצרים פרויקט iOS חדש באמצעות Objective-C בשם PodServingExample.
הוספת IMA DAI SDK לפרויקט Xcode
אפשר להשתמש באחת משלוש השיטות הבאות כדי להתקין את IMA DAI SDK.
התקנת ה-SDK באמצעות CocoaPods (האפשרות המועדפת)
CocoaPods הוא מנהל יחסי תלות לפרויקטים ב-Xcode, והוא השיטה המומלצת להתקנת IMA DAI SDK. מידע נוסף על התקנה או שימוש ב-CocoaPods זמין במאמרי העזרה של CocoaPods. אחרי שתתקינו את CocoaPods, תוכלו להשתמש בהוראות הבאות כדי להתקין את IMA DAI SDK:
באותה ספרייה שבה נמצא הקובץ PodServingExample.xcodeproj, יוצרים קובץ טקסט בשם Podfile ומוסיפים את ההגדרות הבאות:
בתיקייה שמכילה את Podfile, מריצים את הפקודה:
pod install --repo-update
התקנת ה-SDK באמצעות Swift Package Manager
Interactive Media Ads SDK תומך ב-Swift Package Manager החל מגרסה 3.18.4. כדי לייבא את חבילת Swift, פועלים לפי השלבים הבאים.
ב-Xcode, מתקינים את חבילת Swift של IMA DAI SDK. לשם כך, עוברים אל File > Add Packages.
בהודעה שמופיעה, מחפשים את המאגר של IMA DAI SDK Swift Package ב-GitHub:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-ios
בוחרים את הגרסה של חבילת Swift של IMA DAI SDK שבה רוצים להשתמש. בפרויקטים חדשים, מומלץ להשתמש באפשרות עד לגרסה הראשית הבאה.
בסיום, Xcode פותר את יחסי התלות בחבילות ומוריד אותן ברקע. למידע נוסף על הוספת יחסי תלות בין חבילות, אפשר לעיין במאמר של Apple.
הורדה והתקנה ידניות של ה-SDK
אם אתם לא רוצים להשתמש ב-Swift Package Manager או ב-CocoaPods, תוכלו להוריד את IMA DAI SDK ולהוסיף אותו לפרויקט באופן ידני.
יצירת נגן וידאו פשוט
הטמעת נגן וידאו ב-View Controller הראשי באמצעות נגן AV שמקובץ בתצוגת UI. IMA SDK משתמש בתצוגת ממשק המשתמש כדי להציג רכיבי ממשק משתמש של מודעות.
איך מאתחלים את הטעינה של המודעות
מייבאים את IMA SDK למנהל התצוגה ומשתמשים בפרוטוקולים IMAAdsLoaderDelegate
ו-IMAStreamManagerDelegate
כדי לטפל באירועים של מנהל הסטרימינג ושל מערך המודעות.
מוסיפים את המאפיינים הפרטיים הבאים כדי לאחסן רכיבים מרכזיים של IMA SDK:
IMAAdsLoader
– ניהול בקשות הסטרימינג במהלך כל משך החיים של האפליקציה.IMAAdDisplayContainer
– הקוד הזה מטפל בהוספה ובניהול של רכיבי ממשק המשתמש של מודעות.IMAAVPlayerVideoDisplay
– מאפשרת תקשורת בין IMA SDK לבין נגן המדיה, ומטפלת במטא-נתונים מתוזמנים.IMAStreamManager
– ניהול ההפעלה של הסטרימינג והפעלת אירועים שקשורים למודעות.
מאתחלים את מערך הטעינה של המודעות, את מאגר המודעות ואת תצוגת הסרטון אחרי שהתצוגה נטענת.
שליחת בקשה להעברת נתונים
כשמשתמש לוחץ על לחצן ההפעלה, שולחים בקשה חדשה לשידור.
משתמשים ב-class IMAPodStreamRequest
לשידורים חיים. להעברות VOD, משתמשים במחלקה IMAPodVODStreamRequest
.
בקשת הסטרימינג כוללת את הפרמטרים של הסטרימינג, וגם הפניה לקונטיינר של תצוגת המודעה ולתצוגת הווידאו.
הקשבה לאירועי טעינה של שידורים
הכיתה IMAAdsLoader
קורא לשיטות IMAAdsLoaderDelegate
אם האתחול של בקשת הסטרימינג הצליח או נכשל.
בשיטת הענקת הגישה adsLoadedWithData
, מגדירים את IMAStreamManagerDelegate
.
מעבירים את מזהה מקור הנתונים למטפל VTP בהתאמה אישית ומאחזרים את כתובת ה-URL של המניפסט של מקור הנתונים. בשידורים חיים, טוענים את כתובת ה-URL של המניפסט במסך הווידאו ומתחילים את ההפעלה. בשידורי VOD, מעבירים את כתובת ה-URL של המניפסט לשיטה loadThirdPartyStream
של מנהל הסטרימינג. בשיטה הזו, המערכת מבקשת נתונים של אירועי מודעות מ-Ad Manager 360, ואז טוענת את כתובת ה-URL של המניפסט ומתחילה את ההפעלה.
מתעדים את השגיאה ביומן של שיטת הענקת הגישה failedWithErrorData
. אפשר גם להפעיל את סטרימינג הגיבוי. שיטות מומלצות ל-DAI
הטמעת טיפול VTP בהתאמה אישית
הטיפול המותאם אישית של VTP שולח את מזהה הסטרימינג של הצופה לשותף הטכני של הווידאו (VTP) יחד עם כל מידע אחר שדרוש ל-VTP כדי להחזיר מניפסט של סטרימינג שמכיל גם תוכן וגם מודעות מודבקות. ב-VTP יסופקו הוראות ספציפיות להטמעת הטיפול המותאם אישית ב-VTP.
לדוגמה, VTP עשוי לכלול כתובת URL של תבנית מניפסט שמכילה את המאקרו [[STREAMID]]
. בדוגמה הזו, הטיפולן מוסיף את מזהה הסטרימינג במקום המאקרו ומחזיר את כתובת ה-URL של המניפסט שנוצר.
האזנה לאירועים של מודעות
האירועים והשגיאות של הסטרימינג מועברים לאפליקציה באמצעות הקריאה של IMAStreamManager
לשיטות IMAStreamManagerDelegate
.
בדוגמה הזו, מתעדים ביומן במסוף את אירועי המודעות הראשיים:
ניקוי נכסי IMA DAI
כדי להפסיק את הפעלת הסטרימינג, להפסיק את כל המעקב אחר מודעות ולשחרר את כל נכסי הסטרימינג שנטענו, צריך לבצע קריאה ל-IMAStreamManager.destroy()
.
מפעילים את האפליקציה. אם היא פועלת, אפשר לבקש ולנגן שידורים של Google DAI באמצעות IMA SDK. למידע נוסף על תכונות מתקדמות יותר של SDK, אפשר לעיין במדריכים נוספים שמפורטים בסרגל הצד הימני או בדוגמאות ב-GitHub.