تتيح لك Audience Network إمكانية تحقيق أرباح من تطبيقات iOS من خلال إعلانات فيسبوك. يوضح هذا الدليل كيفية إنشاء تطبيق iOS يعرض إعلانات البانر وإعلانات المستطيل المتوسط.
You can change placements in Monetization Manager to the Medium Rectangle format if these were previously configured as Banner for bidding. Similarly, for any new medium rectangle placements, navigate to the placement settings page in Monetization Manager and select Medium Rectangle (not Banner).
Placements will deliver as normal even if they are not changed to the medium rectangle format. However, to avoid confusion, we recommend that you change these placements to medium rectangle.
إذا كنت مهتمًا بالأنواع الأخرى للوحدات الإعلانية، فاطّلع على قائمة الأنواع المتوفرة.
لنبدأ تنفيذ موضع إعلان البانر التالي.
احرص على إكمال دليل دلائل إعداد iOS قبل المتابعة.
عند تصميم الإعلانات الأصلية وإعلانات البانر، يجب التأكد من اتباع إرشادات تخطيط iOS لتقديم تجربة مثالية للمستخدم.
adContainer
. FBAudienceNetwork
وأعلن التوافق مع بروتوكول FBAdViewDelegate
وأضف متغير مثيل لوحدة الإعلان
import UIKit
import FBAudienceNetwork
class ViewController: UIViewController, FBAdViewDelegate {
@IBOutlet private var adContainer: UIView!
private var adView: FBAdView?
}
viewDidLoad
؛ أنشئ مثيلاً جديدًا من FBAdView
وأضفه إلى طريقة العرض. FBAdView
هو فئة فرعية من UIView
. يمكنك إضافته إلى بنية طريقة العرض تمامًا مثل أي طريقة عرض أخرى.
override func viewDidLoad() {
super.viewDidLoad()
// Instantiate an AdView object.
// NOTE: the placement ID will eventually identify this as your app, you can ignore while you
// are testing and replace it later when you have signed up.
// While you are using this temporary code you will only get test ads and if you release
// your code like this to the App Store your users will not receive ads (you will get a 'No Fill' error).
let adView = FBAdView(placementID: "YOUR_PLACEMENT_ID", adSize: kFBAdSizeHeight50Banner, rootViewController: self)
adView.frame = CGRect(x: 0, y: 0, width: 320, height: 250)
adView.delegate = self
adView.loadAd()
self.adView = adView
}
kFBAdSizeHeight250Rectangle
في معلمة adSize إلى FBAdView
. FBAdView
. يمتاز عرض الوحدة بالمرونة ويكون 320 بيكسل بحد أدنى، ويتم تحديد الارتفاع فقط.تنسيق الإعلان | مرجع AdSize | الحجم | التوصية |
---|---|---|---|
مستطيل متوسط |
| 300x250 | يوصى بهذا التنسيق بشدة حيث إنه يوفر أداءً أعلى وجودة أفضل وكفاءة أكبر لوحدة المعالجة المركزية |
البانر القياسي |
| 320x50 | يناسب هذا التنسيق الهواتف ولكن لا يوصى به بسبب الأداء والجودة الضعيفة |
البانر الكبير |
| 320x90 | يناسب هذا التنسيق الأجهزة اللوحية والأجهزة الأكبر ولكن لا يوصى به بسبب الأداء والجودة الضعيفة |
YOUR_PLACEMENT_ID
بسلسلة معرف الموضع الخاص. إذا لم يكن لديك معرف موضع أو ليس لديك معرفة عن كيفية الحصول على معرف، فراجع دليل بدء الاستخدام. بعد اختيار الجهاز كهدف للإنشاء وتشغيل الرمز أعلاه، يجب أن يظهر لك إعلان كما يلي: عند تشغيل الإعلانات في المحاكي، يجب تغيير الإعداد إلى وضع الاختبار لعرض إعلانات اختبارية. لمزيد من المعلومات، يرجى الرجوع إلى كيفية استخدام وضع الاختبار.
اختياريًا، يمكن إضافة الوظائف التالية لمعالجة الحالات التي يكون فيها الإعلان مغلقًا أو التي يقوم فيها المستخدم بالنقر عليه:
func adViewDidClick(_ adView: FBAdView) {
print("Ad was clicked.")
}
func adViewDidFinishHandlingClick(_ adView: FBAdView) {
print("Ad did finish click handling.")
}
func adViewWillLogImpression(_ adView: FBAdView) {
print("Ad impression is being captured.")
}
أضف وظيفتي التفويض التاليتين وقم بتنفيذهما في عنصر التحكم في العرض لمعالجة حالات إخفاق تحميل الإعلانات:
func adView(_ adView: FBAdView, didFailWithError error: Error) {
print("Ad failed to load with error: \(error.localizedDescription)")
}
func adViewDidLoad(_ adView: FBAdView) {
print("Ad was loaded and ready to be displayed")
showAd()
}
private func showAd() {
guard let adView = adView, adView.isAdValid else {
return
}
adContainer.addSubview(adView)
}
عندما لا يوجد أي إعلان للعرض، سيتم استدعاء adView:didFailWithError:
مع تعيين error.code
على 1001
. إذا كنت تستخدم تقارير مخصصة أو طبقة خدمة وسيطة خاصة بك، فقد يلزمك التحقق من قيمة الرمز واكتشاف هذه الحالة. في هذه الحالة، يمكنك الرجوع إلى شبكة إعلانية أخرى ولكن لا ترسل طلبًا مرة أخرى بشأن الإعلان على الفور بعد ذلك.
NativeAdSample
كجزء من مجموعة SDK ويمكن العثور عليه داخل المجلد FBAudienceNetwork/samples
. قم باستيراد المشروع إلى Xcode وقم بتشغيله على جهاز أو على المحاكي.