الإعلانات المدمجة مع المحتوى هي مواد عرض الإعلانات التي يتم عرضها للمستخدمين من خلال مكوّنات واجهة المستخدم التي أصلية في النظام الأساسي يتم عرضهم باستخدام الصفوف نفسها التي تستخدمها حاليًا في مخططات القصة، ويمكن تنسيقها لتتناسب مع التصميم المرئي لتطبيقك.
فعند تحميل إعلان مدمج مع المحتوى، يتلقّى تطبيقك عنصر إعلان يحتوي على مواد العرض الخاصة به. وسيتم استخدام التطبيق، بدلاً من حزمة "SDK لإعلانات Google على الأجهزة الجوّالة"، مسئولون عن عرضها.
بوجهٍ عام، هناك جزءان لتنفيذ الإعلانات المدمجة مع المحتوى بنجاح: تحميل إعلان باستخدام حزمة SDK ثم عرض محتوى الإعلان في تطبيقك.
توضّح هذه الصفحة كيفية استخدام حزمة SDK لتحميل الإعلانات المدمجة مع المحتوى.
المتطلبات الأساسية
- أكمِل دليل البدء.
الاختبار دائمًا باستخدام الإعلانات الاختبارية
عند إنشاء تطبيقاتك واختبارها، احرص على استخدام إعلانات تجريبية بدلاً من إعلانات بث مباشر
أسهل طريقة لتحميل الإعلانات الاختبارية هي استخدام الرقم التعريفي المخصص للوحدة الإعلانية الاختبارية الإعلانات المدمجة مع المحتوى على iOS:
/21775744923/example/native
لقد تم إعدادها خصيصًا لعرض إعلانات اختبارية لكل طلب، ويمكنك في تطبيقاتك الخاصة أثناء الترميز والاختبار وتصحيح الأخطاء. ما عليك سوى الحرص على استبداله بمعرّف وحدتك الإعلانية قبل نشر تطبيقك.
لمزيد من المعلومات عن آلية عمل الإعلانات الاختبارية لحزمة "SDK لإعلانات Google على الأجهزة الجوّالة"، يُرجى الاطّلاع على الإعلانات الاختبارية:
تحميل الإعلانات
يتم تحميل الإعلانات المدمجة مع المحتوى باستخدام فئة
GADAdLoader
التي تُرسِل الرسائل إلى المفوَّضين وفقًا لبروتوكول
GADAdLoaderDelegate
.
بالإضافة إلى التنسيق الأصلي الذي يحدده النظام، يمكنك أيضًا إنشاء
أشكال الإعلانات المدمجة المخصصة
يمكن استخدامها للإعلانات المدمجة مع المحتوى للبيع المباشر تتيح لك أشكال الإعلانات المدمجة مع المحتوى
تمرير بيانات منظَّمة عشوائية إلى تطبيقك يتم تمثيل هذه الإعلانات بواسطة
صف واحد (GADCustomNativeAd
).
إعداد أداة تحميل الإعلانات
قبل أن تتمكّن من تحميل إعلان، عليك إعداد أداة تحميل الإعلانات.
يوضّح الرمز التالي طريقة إعداد GADAdLoader
:
Swift
adLoader = GADAdLoader(adUnitID: "/21775744923/example/native",
// The UIViewController parameter is optional.
rootViewController: rootViewController,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/21775744923/example/native"
// The UIViewController parameter is nullable.
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
ستحتاج إلى رقم تعريف وحدة إعلانية (يمكنك استخدام رقم التعريف التجريبي)، وثوابت لنقلها في صفيف adTypes
لتحديد التنسيقات المدمجة مع المحتوى التي تريد طلبها، وأي خيارات تريد ضبطها في المَعلمة options
. قائمة الخيارات المحتملة
يمكن العثور على قيم للمعلمة options
في قسم إعداد الإعلان المدمج مع المحتوى
صفحة الخيارات
يجب أن تحتوي المصفوفة adTypes
على واحد أو أكثر من الثوابت التالية.
:
تنفيذ تفويض أداة تحميل الإعلانات
يحتاج المفوَّض إلى أداة تحميل الإعلانات إلى تنفيذ بروتوكولات خاصة بنوع إعلانك.
بالنسبة إلى الإعلانات المدمجة مع المحتوى، يتضمّن بروتوكول GADNativeAdLoaderDelegate
رسالة.
يتم إرسالها إلى المفوَّض عند تحميل إعلان مدمج مع المحتوى.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
يتضمن بروتوكول GADCustomNativeAdLoaderDelegate
رسالة تم إرسالها إلى
المفوَّض عند تحميل إعلان النموذج المخصص.
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
طلب إدراج الإعلانات
بعد إعداد GADAdLoader
، يمكنك استدعاء طريقة loadRequest:
طلب إعلان:
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
تشير رسالة الأشكال البيانية
loadRequest:
إجراء
GADAdLoader
يقبل نفس
GAMRequest
كإعلانات بانر وإعلانات بينية. يمكنك استخدام كائنات الطلب من أجل إضافة
معلومات الاستهداف، تمامًا كما
مع أنواع الإعلانات الأخرى
جارٍ تحديد وقت انتهاء التحميل
بعد اتصال أحد التطبيقات بالرقم loadRequest:
، يمكنه الحصول على نتائج الطلب باستخدام
المكالمات إلى:
adLoader:didFailToReceiveAdWithError:
فيGADAdLoaderDelegate
adLoader:didReceiveNativeAd:
فيGADNativeAdLoaderDelegate
سينتج عن طلب إعلان واحد استدعاء واحد لإحدى هذه الطرق.
معالجة الطلبات التي تعذّر تنفيذها
تعمل البروتوكولات المذكورة أعلاه على توسيع بروتوكول GADAdLoaderDelegate
، الذي يحدد
يتم إرسالها عند إخفاق تحميل الإعلانات.
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
تلقّي إشعارات بشأن أحداث الإعلانات المدمجة مع المحتوى
لتلقّي إشعارات بشأن الأحداث ذات الصلة بالتفاعلات مع الإعلانات المدمجة مع المحتوى، يجب تحديد المفوَّض. خاصية الإعلان المدمج مع المحتوى:
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
ثم تنفيذ
GADNativeAdDelegate
لتلقّي المكالمات المفوَّضة التالية:
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
أفضل الممارسات
اتّبِع هذه القواعد عند تحميل الإعلانات.
على التطبيقات التي تستخدم الإعلانات المدمجة مع المحتوى في قائمة تخزين قائمة الإعلانات مؤقتًا مسبقًا.
وعند التخزين المُسبق للإعلانات، عليك محو ذاكرة التخزين المؤقّت وإعادة التحميل بعد ساعة واحدة.
عدم الاتصال بـ "
loadRequest:
" مجددًا على "GADAdLoader
" حتى تقديم الطلب السابق ينتهي التحميل، كما هو موضح فيadLoaderDidFinishLoading:
.
عرض إعلانك
وبعد تحميل أحد الإعلانات، كل ما تبقى هو عرضه للمستخدمين. انتقِل إلى الإصدار المتقدم من الإعلانات المدمجة مع المحتوى الدليل لمعرفة كيفية إجراء ذلك.