Google Mobile Ads SDK תומך במונטיזציה של האפליקציות באמצעות Ad Exchange לנכס. במדריך הזה איך להגדיר את האפליקציות שלך לכל הפורמטים של המודעות שנתמכים על ידי Ad Exchange.
דרישות מוקדמות
- מבצעים את בדרישות המוקדמות.
- מגדירים אפליקציה ל-Google Mobile Ads SDK.
הגדרת האפליקציה לצורך גישה ל-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();