הגדרת גישה ישירה ל-Ad Exchange

Google Mobile Ads SDK תומך במונטיזציה של האפליקציות באמצעות Ad Exchange לנכס. במדריך הזה איך להגדיר את האפליקציות שלך לכל הפורמטים של המודעות שנתמכים על ידי Ad Exchange.

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

הגדרת האפליקציה לצורך גישה ל-Ad Exchange

מוסיפים את מזהה האפליקציה של Ad Manager (שמזוהה ב-Ad Manager) UI) של האפליקציה קובץ AndroidManifest.xml באמצעות תג <meta-data> עם android:name="com.google.android.gms.ads.APPLICATION_ID" של android:value, להוסיף מזהה אפליקציה משלכם ב-Ad Manager, שמוקף במירכאות.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

שימו לב גם שאם לא תוסיפו את התג <meta-data> כפי שמוצג למעלה, לקרוס עם ההודעה:

Missing application ID.

לאחר מכן תוכלו לאתחל את המודעות של Google לנייד SDK ולבחור פורמט מודעה להצגה. המשך המדריך הזה יטמיע את פורמט מודעת באנר ל- תמחיש איך אפשר לטעון מודעה מ-Ad Exchange. אותם שלבים יכולים לחול גם על כל פורמט מודעה שנתמך על ידי Google Mobile Ads SDK.

טעינת מודעה מ-Ad Exchange

אפשר להשתמש בקוד של נכס אינטרנט של Ad Exchange עם קו נטוי לפנים, בקטע את האפליקציה שלך במקום המזהה של יחידת המודעות.

לדוגמה, כדי לטעון מודעת באנר על ידי הצבת AdManagerAdView בפריסה עבור Activity באופן הבא:

# main_activity.xml
...
  <com.google.android.gms.ads.admanager.AdManagerAdView
      xmlns:ads="http://schemas.android.com/apk/res-auto"
      android:id="@+id/adManagerAdView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-mb-app-pub-5629679302779023/">
  </com.google.android.gms.ads.admanager.AdManagerAdView>

לתשומת ליבכם: אם לא מוסיפים קו נטוי לפנים באתר Ad Exchange באינטרנט קוד המאפיין כפי שמוצג למעלה יגרום לשגיאה בבקשה להצגת מודעה עם ההודעה:

Invalid Request. Cannot determine request type. Is your ad unit id correct?

שימו לב שאפשר גם להמיר קוד של נכס אינטרנט של Ad Exchange ליחידת מודעות. לאחר מכן, אפשר להשתמש בממשק המשתמש של Ad Manager כדי ליצור חשבון Ad Exchange תיוג והעתקה שלו אל אפליקציה. התג שנוצר צריך לכלול את הקוד של נכס האינטרנט של Ad Exchange, ואחריו לפי מזהים של יחידת מודעות צאצא ללא קו נטוי קדימה, לדוגמה: ca-mb-app-pub-5629679302779023/banner

לחלופין, אפשר ליצור AdManagerAdView באופן פרוגרמטי:

Java

AdManagerAdView adView = new AdManagerAdView(this);

adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");

// TODO: Add adView to your view hierarchy.

Kotlin

val adView = AdManagerAdView(this)

adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"

// TODO: Add adView to your view hierarchy.

אחרי שהAdManagerAdView יהיה במקומו, אפשר לקרוא לloadAd() method ברכיב AdManagerAdView ולהתאים אישית את התנהגות המודעה באמצעות מודעה אירועים.

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

בנוסף, ניתן להשתמש בנכס אינטרנט של Ad Exchange כדי לטעון ולהציג תוכן אחר פורמטים של מודעות מ-Ad Exchange בעזרת המדריכים המתאימים:

(בעלי תוכן דיגיטלי מאושרים באירופה בלבד) הוספת מחירי מינימום

אפשר לשלוח בקשה לגבי 'מחירי מינימום'. .

אחרי שהבקשה תאושר, תהיה לך אפשרות לכלול בבקשה להצגת מודעה קומה ציבורית או פרטית באמצעות הפרמטרים pubf ו-pvtf בהתאמה. בדוגמה הבאה לקוד, מחליפים את '123' במחירי רצפה ב-micros ובמטבע ברירת המחדל של הערוץ. דוגמה לאופן שבו המערכת מחילה את המיקרו: אם מטבע ברירת המחדל הוא דולר ארה"ב, צריך להזין '6000000' האם הערך שווה ערך ל-6.00$.

Java

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

Kotlin

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
    .build();