تتيح حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" تحقيق الربح من تطبيقاتك باستخدام موقع على "Ad Exchange". يوضّح لك هذا الدليل كيفية ضبط تطبيقاتك على جميع أشكال الإعلانات المتوافقة مع Ad Exchange.
المتطلبات الأساسية
- أكمِل المتطلبات الأساسية.
- ضبط تطبيقك لاستخدام حزمة "SDK لإعلانات Google على الأجهزة الجوّالة"
إعداد تطبيقك للوصول إلى Ad Exchange
أضِف رقم تعريف تطبيقك على "إدارة إعلانات Google" (المحدّد في واجهة مستخدم "إدارة إعلانات Google") إلى ملف AndroidManifest.xml الخاص بتطبيقك من خلال علامة <meta-data> تتضمّن android:name="com.google.android.gms.ads.APPLICATION_ID". بالنسبة إلى android:value،
أدخِل معرّف تطبيقك على "مدير إعلانات Google"، محاطًا بعلامات اقتباس.
<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.
بعد ذلك، يمكنك إعداد حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة واختيار شكل إعلان لعرضه. تستخدِم بقية هذا الدليل شكل إعلان البانر لتوضيح كيفية تحميل إعلان من "Ad Exchange". يمكن تطبيق الخطوات نفسها على أي أشكال إعلانات تتوافق مع حزمة "SDK لإعلانات Google على الأجهزة الجوّالة".
تحميل إعلان من Ad Exchange
يمكنك استخدام رمز موقع إلكتروني على Ad Exchange مع شرطة مائلة لاحقة، بدلاً من معرّف الوحدة الإعلانية. مثلاً: ca-mb-app-pub-5629679302779023/
على سبيل المثال، لتحميل إعلان بانر من خلال وضع 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>
يمكنك بدلاً من ذلك إنشاء هيكلية طرق العرض برمجيًا:
جافا
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() في فئة
AdManagerAdView وتخصيص سلوك إعلانك باستخدام أحداث
الإعلان.
يُرجى العِلم أنّ عدم إضافة شرطة مائلة للأمام في نهاية رمز الموقع على الويب في Ad Exchange يؤدي إلى حدوث خطأ في طلب عرض الإعلان مع ظهور الرسالة التالية:
Invalid Request. Cannot determine request type. Is your ad unit id correct?
يمكنك أيضًا تحويل رمز موقع إلكتروني على Ad Exchange إلى وحدة إعلانية.
بعد ذلك، استخدِم واجهة مستخدم "إدارة إعلانات Google" من أجل إنشاء علامة Ad Exchange ونسخها إلى تطبيقك. يجب أن تتضمّن العلامة التي تم إنشاؤها رمز الموقع الإلكتروني على Ad Exchange، متبوعًا بمعرّفات الوحدات الإعلانية الفرعية بدون شرطة مائلة لاحقة، على سبيل المثال: ca-mb-app-pub-5629679302779023/banner.
هذا كل شيء! أصبح تطبيقك الآن جاهزًا لتحميل إعلانات البانر وعرضها من "Ad Exchange".
بالإضافة إلى ذلك، يمكنك استخدام موقع إلكتروني على Ad Exchange لتحميل أشكال إعلانات أخرى من Ad Exchange وعرضها باتّباع الأدلة ذات الصلة:
(الناشرون الأوروبيون المعتمَدون فقط) إضافة حدود دنيا للأسعار
يمكنك إرسال طلب للحصول على ميزة "حدود الأسعار الدنيا".
بعد الموافقة، يمكنك تضمين حدّ أدنى علني أو حدّ أدنى خاص في طلب عرض الإعلان باستخدام المَعلمتَين pubf وpvtf على التوالي. في مثال الرمز البرمجي التالي، استبدِل "123" بالأسعار الدنيا بالميكرو وعملة شبكتك التلقائية. مثال على كيفية تطبيق وحدات الميكرو: إذا كانت عملتك التلقائية هي الدولار الأمريكي، فإنّ إدخال "6000000" يعادل 6.00 دولار أمريكي.
جافا
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();