הוספת תמיכה במודעות נלוויות

בחירת פלטפורמה: HTML5 Android iOS

המדריך הזה מיועד לבעלי אפליקציות שרוצים להוסיף מודעות משלימות להטמעה של IMA ב-Android.

דרישות מוקדמות

  • אפליקציה ל-Android עם שילוב של IMA SDK. אם עדיין אין לכם אפליקציה שמשולב בה ה-SDK, תוכלו לעיין בBasicExample. אם אתם צריכים עזרה בהטמעה של IMA SDK באפליקציה, כדאי לעיין במאמר בנושא הגדרה של IMA SDK.
  • תג מודעה שהוגדר להחזיר מודעה נלווית. אם אתם צריכים דוגמה, אפשר לעיין בשאלות הנפוצות שלנו.

הוספת מודעות משלימות לאפליקציה

כאן מוסבר איך להוסיף מיקום מודעה בדף נלווית ולהציג מודעות נלוות באפליקציה.

יצירת ViewGroup להצגת הרכיב הנלווה

לפני שמבקשים ליצור דמות, צריך ליצור בשבילה מקום בפריסה. ב-XML של הפריסה, מוסיפים רכיב ViewGroup. בדוגמה הזו נעשה שימוש ב-LinearLayout. בשלב מאוחר יותר תעבירו הפניה לרכיב הזה אל AdDisplayContainer.

אם אתם משלבים את התכונה באפליקציית BasicExample, מוסיפים את הקוד הבא לקובץ activity_my.xml מתחת ל-videoPlayerContainer.

<LinearLayout
    android:id="@+id/companionAdSlot"
    android:layout_width="match_parent"
    android:layout_height="250dp"
    android:layout_gravity="center_horizontal"
    android:gravity="center"
    android:orientation="vertical"
    android:textAlignment="center" />

צור CompanionAdSlot

בשלב הבא יוצרים אובייקט CompanionAdSlot, ואז מוסיפים אותו למופע ArrayList<CompanionAdSlot>. ממשק AdDisplayContainer מקבל רשימה של מיקומי מודעות משלימות, כך שאפשר להציג כמה מודעות משלימות בו-זמנית. כדי ליצור את האובייקט CompanionAdSlot, צריך ליצור מופע של המחלקה ImaSdkFactory.

public void createCompanionAdSlot(ViewGroup companionViewGroup) {
  ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
  CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(companionViewGroup);
  companionAdSlot.setSize(300, 250);
  ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
  companionAdSlots.add(companionAdSlot);
}

צריך ליצור מיקום מודעה בדף למודעה נלווית לכל גודל של מודעה נלווית שרוצים להציג באפליקציה. ה-IMA SDK מאכלס את מיקום המודעה בדף למודעה נלווית בכל מודעה נלווית מתגובת VAST שהמידות שלה תואמות לגובה ולרוחב של התצוגה. בנוסף, IMA SDK תומך בשימוש במודעות נלוות בגודל משתנה. אחרי שיוצרים את companionAdSlots, מוסיפים אותם לAdsLoader. בדוגמאות הבאות מוסבר איך עושים את זה, בהתאם לשאלה אם אתם משתמשים בתוסף Exoplayer-IMA או בהטמעות אחרות של IMA שלא משתמשות בתוסף.

תוסף Exoplayer-IMA

public void setCompanionAdSlotExoPlayer(
    Context context, ArrayList<CompanionAdSlot> companionAdSlots) {
  ImaAdsLoader adsLoader =
      new ImaAdsLoader.Builder(context).setCompanionAdSlots(companionAdSlots).build();
}

הטמעות אחרות

public void setCompanionAdSlot(
    AdDisplayContainer adDisplayContainer, ArrayList<CompanionAdSlot> companionAdSlots) {
  adDisplayContainer.setCompanionSlots(companionAdSlots);
}

זה הכול! עכשיו מוצגות באפליקציה מודעות נלוות.

הצגת מודעות נלוות גמישות

‫IMA תומך במודעות נלוות גמישות. גודל המודעות הנלוות האלה יכול להשתנות בהתאם לגודל של מיקום המודעה. הן ממלאות 100% מהרוחב של תצוגת האב, ואז משנות את הגובה שלהן כדי להתאים לתוכן של המודעה הנלווית. הגודל שלהן נקבע באמצעות Fluid companion size ב-Ad Manager. בתמונה הבאה אפשר לראות איפה מגדירים את הערך הזה.

תמונה שבה מוצגות הגדרות המודעות הנלוות ב-Ad Manager. האפשרות 'גדלים של מודעות באנר נלוות' מודגשת.

עדכון אפליקציות ל-Android כדי להשתמש בהן במצב 'מסך מפוצל'

כדי להגדיר מיקום גמיש של מודעה משלימה, צריך לעדכן את השיטה CompanionAdSlot.setSize() כך שתקבל את CompanionAdSlot.FLUID_SIZE כפרמטרים.

companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);

שאלות נפוצות

פעלתי לפי ההוראות במדריך, אבל לא רואה מודעות נלוות. מה לעשות?
קודם כל, צריך לוודא שהתג באמת מחזיר מודעות משלימות. כדי לעשות את זה, פותחים את התג בדפדפן אינטרנט ומחפשים תג <CompanionAds>. אם אתם רואים את השגיאה הזו, צריך לוודא שהגודל של המודעה הנלווית שמוחזרת זהה לגודל המידות שאתם מעבירים לאובייקט CompanionAdSlot.
איך ייראה מיקום המודעה הנלווית שלי אחרי שאפעל את ההוראות במדריך הזה?

התמונה הבאה נוצרה מתוך BasicExample ובמסגרתה מוצג סרטון התוכן בחלק העליון ומודעה נלווית מתחתיו.

תמונה לדוגמה של מודעה נלווית ב-Android ב-IMA.