"الإعلانات المدمجة مع المحتوى" هي مواد عرض إعلانية تُعرض للمستخدمين من خلال عناصر واجهة مستخدم مدمجة في المنصة. ويتم عرضها باستخدام أنواع طرق العرض نفسها التي تستخدمها حاليًا لإنشاء التصاميم، ويمكن تنسيقها لتتطابق مع التصميم المرئي لتطبيقك.
عند تحميل إعلان مدمج مع المحتوى، يتلقّى تطبيقك عنصر إعلان يحتوي على مواد العرض الخاصة به، ثم يكون التطبيق هو المسؤول عن عرضها، وليس حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة (الإصدار التجريبي).
بشكل عام، يتضمّن عرض الإعلانات المدمجة مع المحتوى بنجاح جزأين: تحميل إعلان باستخدام حزمة SDK ثم عرض محتوى الإعلان في تطبيقك.
توضّح هذه الصفحة كيفية استخدام حزمة SDK لتحميل الإعلانات المُدمَجة مع المحتوى.
المتطلبات الأساسية
- أكمِل دليل البدء.
- الإصدار 0.6.0-alpha01 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لخدمة "إعلانات Google على الأجهزة الجوّالة" (الإصدار التجريبي)
اختبار الإعلانات دائمًا باستخدام الإعلانات الاختبارية
عند إنشاء تطبيقاتك واختبارها، احرص على استخدام إعلانات اختبارية بدلاً من الإعلانات المباشرة في مرحلة الإنتاج. وقد يؤدي عدم اتّخاذ هذا الإجراء إلى تعليق حسابك.
أسهل طريقة لتحميل إعلانات اختبارية هي استخدام معرّف وحدة إعلانية اختبارية مخصّص للإعلانات المدمجة:
شكل الإعلان | نموذج رقم تعريف الوحدة الإعلانية |
---|---|
مدمجة مع المحتوى | /21775744923/example/native |
فيديو محلي | /21775744923/example/native-video |
تحميل إعلان
لتحميل إعلان أصلي، استدعِ طريقة NativeAdLoader.load()
، التي تتطلّب NativeAdRequest
وNativeAdLoaderCallback
.
import com.google.android.libraries.ads.mobile.sdk.common.LoadAdError
import com.google.android.libraries.ads.mobile.sdk.nativead.NativeAd
import com.google.android.libraries.ads.mobile.sdk.nativead.NativeAdLoader
import com.google.android.libraries.ads.mobile.sdk.nativead.NativeAdLoaderCallback
import com.google.android.libraries.ads.mobile.sdk.nativead.NativeAdRequest
class NativeFragment : Fragment() {
private var nativeAd: NativeAd? = null
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
loadAd()
}
private fun loadAd() {
// Build an ad request with native ad options to customize the ad.
val adRequest = NativeAdRequest
.Builder(AD_UNIT_ID, listOf(NativeAd.NativeAdType.NATIVE))
.build()
val adCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Called when a native ad has loaded.
}
override fun onAdFailedToLoad(adError: LoadAdError) {
// Called when a native ad has failed to load.
}
}
// Load the native ad with our request and callback.
NativeAdLoader.load(adRequest, adCallback)
}
companion object {
// Sample native ad unit ID.
const val AD_UNIT_ID = "/21775744923/example/native"
}
}
ضبط معاودة الاتصال بحدث الإعلان المدمج مع المحتوى
عند معالجة onNativeAdLoaded
، اضبط NativeAd
المستلَمة باستخدام
NativeAdEventCallback
لتحديد دوال لتلقّي أحداث مراحل نشاط الإعلانات المحلية:
nativeAd.adEventCallback =
object : NativeAdEventCallback {
override fun onAdShowedFullScreenContent() {
// Native ad showed full screen content.
}
override fun onAdDismissedFullScreenContent() {
// Native ad dismissed full screen content.
}
override fun onAdFailedToShowFullScreenContent {
// Native ad failed to show full screen content.
}
override fun onAdImpression() {
// Native ad recorded an impression.
}
override fun onAdClicked() {
// Native ad recorded a click.
}
}
اختياري: تحميل إعلانات متعدّدة
لتحميل إعلانات متعدّدة، استدعِ الدالة load()
مع المَعلمة الاختيارية numberOfAds
.
الحدّ الأقصى للقيمة التي يمكنك ضبطها هو 5
، وهو يمثّل عدد الإعلانات.
قد لا تعرض حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" (الإصدار التجريبي) العدد الدقيق للإعلانات التي طلبتها.
private fun loadAd() {
// Build an ad request with native ad options to customize the ad.
val adRequest = NativeAdRequest
.Builder(AD_UNIT_ID, listOf(NativeAd.NativeAdType.NATIVE))
.build()
val adCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Called when a native ad has loaded.
}
override fun onAdFailedToLoad(adError: LoadAdError) {
// Called when a native ad has failed to load.
}
override fun onAdLoadingCompleted() {
// Called when all native ads have loaded.
}
}
// Load the native ad with our request and callback.
NativeAdLoader.load(adRequest, 3, adCallback)
}
الإعلانات التي تعرضها حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" (الإصدار التجريبي) هي إعلانات فريدة، ولكن قد لا تكون الإعلانات من المساحات الإعلانية المحجوزة أو المشترين التابعين لجهات خارجية فريدة.
في حال استخدام التوسّط، لا تستدعِ الطريقة load()
. لا يمكن استخدام طلبات عرض إعلانات أصلية متعدّدة مع أرقام تعريف الوحدات الإعلانية التي تم ضبطها للتوسّط.
أفضل الممارسات
اتّبِع هذه القواعد عند تحميل الإعلانات.
يجب أن تخزِّن التطبيقات التي تستخدم الإعلانات المُدمَجة مع المحتوى في قائمة، قائمة الإعلانات مؤقتًا مسبقًا.
عند التخزين المؤقت المسبق للإعلانات، امحُ ذاكرة التخزين المؤقت وأعِد التحميل بعد ساعة واحدة.
احصر تخزين الإعلانات المدمجة في ذاكرة التخزين المؤقت على ما هو مطلوب فقط. على سبيل المثال، عند التخزين المؤقت المسبق، لا يتم تخزين سوى الإعلانات التي تظهر على الشاشة مباشرةً. تستهلك الإعلانات المدمجة مع المحتوى مساحة كبيرة من الذاكرة، ويؤدي تخزينها مؤقتًا بدون إزالتها إلى استخدام مفرط للذاكرة.
إيقاف عرض الإعلانات المدمجة مع المحتوى عندما لا تكون قيد الاستخدام
تسريع الأجهزة لإعلانات الفيديو
لكي تظهر إعلانات الفيديو بنجاح في مشاهدات الإعلانات المدمجة مع المحتوى، يجب تفعيل تسريع الأجهزة.
يتم تفعيل ميزة "تسريع الأداء باستخدام الأجهزة" تلقائيًا، ولكن قد تختار بعض التطبيقات إيقافها. إذا كان ذلك ينطبق على تطبيقك، ننصحك بتفعيل ميزة تسريع الأجهزة لفئات الأنشطة التي تستخدم الإعلانات.
تفعيل ميزة "تسريع الأجهزة"
إذا كان تطبيقك لا يعمل بشكل صحيح عند تفعيل ميزة "تسريع الأجهزة" على مستوى العالم، يمكنك التحكّم فيها للأنشطة الفردية أيضًا. لتفعيل ميزة "تسريع الأجهزة" أو إيقافها، استخدِم السمة android:hardwareAccelerated
للعنصرَين <application>
و<activity>
في AndroidManifest.xml
. يُفعّل المثال التالي تسريع الأجهزة للتطبيق بأكمله، ولكنّه يوقفه لنشاط واحد:
<application android:hardwareAccelerated="true">
<!-- For activities that use ads, hardwareAcceleration should be true. -->
<activity android:hardwareAccelerated="true" />
<!-- For activities that don't use ads, hardwareAcceleration can be false. -->
<activity android:hardwareAccelerated="false" />
</application>
راجِع دليل تسريع الأجهزة للحصول على مزيد من المعلومات حول خيارات التحكّم في تسريع الأجهزة. يُرجى العِلم أنّه لا يمكن تفعيل مشاهدات الإعلانات الفردية لتسريع الأجهزة إذا كان "النشاط" غير مفعَّل، لذا يجب أن يكون "النشاط" نفسه مفعَّلاً لتسريع الأجهزة.
عرض إعلانك
بعد تحميل إعلان، كل ما عليك فعله هو عرضه للمستخدمين. يمكنك الانتقال إلى دليل الإعلانات المتقدّمة المدمجة لمعرفة كيفية إجراء ذلك.
مثال
نزِّل تطبيق المثال وشغِّله، وهو يوضّح كيفية استخدام حزمة SDK لإعلانات Google على الأجهزة الجوّالة (الإصدار التجريبي).