مرّات ظهور إعلانات البانر هي إعلانات صورية أو نصية مستطيلة تشغل مساحة على الشاشة. وتظل معروضة على الشاشة أثناء تفاعل المستخدمين مع التطبيق، ويمكن إعادة تحميلها تلقائيًا بعد فترة زمنية محدّدة. إذا كنت مبتدئًا في مجال الإعلانات على الأجهزة المتحرّكة، يمكنك البدء باستخدام هذه الإعلانات. دراسة حالة:
يوضّح لك هذا الدليل كيفية دمج مشاهدات البانر في تطبيق Unity. بالإضافة إلى مقتطفات الرموز والتعليمات، يتضمّن الدليل أيضًا معلومات عن ضبط حجم البانر بشكلٍ سليم وروابط إلى مراجع إضافية.
المتطلبات الأساسية
- أكمِل دليل البدء.
إجراء الاختبار دائمًا باستخدام الإعلانات الاختبارية
يحتوي نموذج الرمز البرمجي التالي على رقم تعريف وحدة إعلانية يمكنك استخدامه لطلب الإعلانات الاختبارية. تم إعداده خصيصًا لعرض إعلانات اختبارية بدلاً من إعلانات الإصدار العلني لكل طلب، ما يجعله آمنًا للاستخدام.
ومع ذلك، بعد تسجيل تطبيق في واجهة ويب AdMob وإنشاء معرّفات الوحدات الإعلانية لاستخدامها في تطبيقك، عليك ضبط جهازك على أنّه جهاز اختباري صراحةً أثناء التطوير.
Android
ca-app-pub-3940256099942544/6300978111
iOS
ca-app-pub-3940256099942544/2934735716
إعداد حزمة تطوير البرامج (SDK) لعرض الإعلانات على الأجهزة الجوّالة
قبل تحميل الإعلانات، اطلب من تطبيقك إعداد حزمة تطوير البرامج (SDK) لعرض الإعلانات على الأجهزة الجوّالة من خلال استدعاء MobileAds.Initialize()
. يجب إجراء ذلك مرة واحدة فقط، ويُفضَّل عند تشغيل التطبيق.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize the Google Mobile Ads SDK.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
إذا كنت تستخدِم التوسّط، انتظِر إلى أن يتمّ استدعاء الدالة قبل تحميل الإعلانات، لأنّه سيؤدّي ذلك إلى ضمان بدء جميع محوّلات التوسّط.
مثال على BannerView
يوضّح الرمز البرمجي النموذجي أدناه كيفية استخدام عرض البانر. في المثال، يتم
إنشاء مثيل لعرض البانر، واستخدام
AdRequest
لتحميل إعلان في عرض البانر، ثم
توسيع إمكاناته من خلال معالجة أحداث دورة الحياة.
إنشاء عرض بانر
الخطوة الأولى في استخدام عرض البانر هي إنشاء مثيل لعرض البانر
في نص برمجي C# مرفق بعنصر GameObject
.
// These ad units are configured to always serve test ads.
#if UNITY_ANDROID
private string _adUnitId = "ca-app-pub-3940256099942544/6300978111";
#elif UNITY_IPHONE
private string _adUnitId = "ca-app-pub-3940256099942544/2934735716";
#else
private string _adUnitId = "unused";
#endif
BannerView _bannerView;
/// <summary>
/// Creates a 320x50 banner view at top of the screen.
/// </summary>
public void CreateBannerView()
{
Debug.Log("Creating banner view");
// If we already have a banner, destroy the old one.
if (_bannerView != null)
{
DestroyAd();
}
// Create a 320x50 banner at top of the screen
_bannerView = new BannerView(_adUnitId, AdSize.Banner, AdPosition.Top);
}
يحتوي مُنشئ BannerView
على المَعلمات التالية:
adUnitId
: رقم تعريف الوحدة الإعلانية التي يجب أن تحمّل منهاBannerView
الإعلانات.AdSize
: حجم الإعلان الذي تريد استخدامه. اطّلِع على مقاسات إعلانات البانر للحصول على التفاصيل.AdPosition
: موضع عرض إعلانات البانر يسرد التعدادAdPosition
قيم مواضع الإعلانات الصالحة.
لاحِظ كيفية استخدام الوحدات الإعلانية المختلفة، استنادًا إلى المنصة. عليك استخدام وحدة إعلانية على iOS لتقديم طلبات الإعلانات على iOS ووحدة إعلانية على Android لتقديم الطلبات على Android.
(اختياري) إنشاء عرض بانر باستخدام موضع مخصّص
للحصول على مزيد من التحكّم في موضع وضع BannerView
على الشاشة مقارنةً بما تقدّمه قيم AdPosition
، استخدِم أسلوب الإنشاء
الذي يتضمّن إحداثيات x وy كمَعلمات:
// Create a 320x50 banner views at coordinate (0,50) on screen.
_bannerView = new BannerView(_adUnitId, AdSize.Banner, 0, 50);
يتم تحديد موضع أعلى يمين BannerView
حسب قيم x وy التي يتم تمريرها إلى المنشئ، حيث يكون المنشأ
أعلى يمين الشاشة.
(اختياري) إنشاء عرض بانر بحجم مخصّص
بالإضافة إلى استخدام ثابت AdSize
، يمكنك أيضًا تحديد حجم مخصّص
لإعلانك:
// Use the AdSize argument to set a custom size for the ad.
AdSize adSize = new AdSize(250, 250);
_bannerView = new BannerView(_adUnitId, adSize, AdPosition.Bottom);
تحميل إعلان بانر
لتحميل إعلان، أنشئ AdRequest
وأرسِله إلى
طريقة LoadAd()
.
/// <summary>
/// Creates the banner view and loads a banner ad.
/// </summary>
public void LoadAd()
{
// create an instance of a banner view first.
if(_bannerView == null)
{
CreateBannerView();
}
// create our request used to load the ad.
var adRequest = new AdRequest();
// send the request to load the ad.
Debug.Log("Loading banner ad.");
_bannerView.LoadAd(adRequest);
}
الاستماع إلى أحداث عرض البانر
لتخصيص سلوك إعلانك، يمكنك الربط بعدد من الأحداث في رحلة إعلانك، مثل التحميل أو الفتح أو الإغلاق. للاستماع إلى هذين الحدثَين، سجِّل مفوَّضًا:
/// <summary>
/// listen to events the banner view may raise.
/// </summary>
private void ListenToAdEvents()
{
// Raised when an ad is loaded into the banner view.
_bannerView.OnBannerAdLoaded += () =>
{
Debug.Log("Banner view loaded an ad with response : "
+ _bannerView.GetResponseInfo());
};
// Raised when an ad fails to load into the banner view.
_bannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
Debug.LogError("Banner view failed to load an ad with error : "
+ error);
};
// Raised when the ad is estimated to have earned money.
_bannerView.OnAdPaid += (AdValue adValue) =>
{
Debug.Log(String.Format("Banner view paid {0} {1}.",
adValue.Value,
adValue.CurrencyCode));
};
// Raised when an impression is recorded for an ad.
_bannerView.OnAdImpressionRecorded += () =>
{
Debug.Log("Banner view recorded an impression.");
};
// Raised when a click is recorded for an ad.
_bannerView.OnAdClicked += () =>
{
Debug.Log("Banner view was clicked.");
};
// Raised when an ad opened full screen content.
_bannerView.OnAdFullScreenContentOpened += () =>
{
Debug.Log("Banner view full screen content opened.");
};
// Raised when the ad closed full screen content.
_bannerView.OnAdFullScreenContentClosed += () =>
{
Debug.Log("Banner view full screen content closed.");
};
}
إغلاق عرض البانر
عند الانتهاء من استخدام عرض البانر، احرص على الاتصال برقم Destroy()
لتحرير موارد الإعلان.
/// <summary>
/// Destroys the banner view.
/// </summary>
public void DestroyAd()
{
if (_bannerView != null)
{
Debug.Log("Destroying banner view.");
_bannerView.Destroy();
_bannerView = null;
}
}
هذا كل شيء! أصبح تطبيقك جاهزًا الآن لعرض إعلانات البانر.
إعادة تحميل إعلان
إذا أعددت وحدتك الإعلانية لإعادة التحميل، لن تحتاج إلى طلب إعلان آخر عند تعذُّر تحميل الإعلان. تلتزم حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" بأيّ معدّل تحديث حدّدته في واجهة مستخدم AdMob. إذا لم تكن قد فعّلت ميزة الصعق الكهربي، قدِّم طلبًا جديدًا. لمزيد من التفاصيل حول إعادة تحميل الوحدات الإعلانية، مثل ضبط معدّل إعادة التحميل، اطّلِع على ضبط خيار إعادة التحميل التلقائية لإعلانات البانر.
أحجام البانر
يسرد الجدول أدناه أحجام البانر العادية.
الحجم بالنقاط (العرض × الارتفاع) | الوصف | مدى التوفّر | ثابت AdSize |
---|---|---|---|
320×50 | بانر عادي | الهواتف والأجهزة اللوحية | BANNER |
100x320 | بانر كبير | الهواتف والأجهزة اللوحية | LARGE_BANNER |
300×250 | مستطيل متوسط وفقًا لمعايير IAB | الهواتف والأجهزة اللوحية | MEDIUM_RECTANGLE |
468×60 | بانر كامل الحجم وفقًا لمعيار IAB | الأجهزة اللوحية | FULL_BANNER |
728×90 | لوحة الصدارة في Interactive Advertising Bureau | الأجهزة اللوحية | LEADERBOARD |
العرض المقدَّم × الارتفاع التكيُّفي | إعلان البانر التكيُّفي | الهواتف والأجهزة اللوحية | لا ينطبق |
عرض الشاشة x 32|50|90 | الإعلانات البانر الذكية | الهواتف والأجهزة اللوحية | SMART_BANNER |
اطّلِع على مزيد من المعلومات عن إعلانات البانر التكيّفية، التي تمّ تصميمها لاستبدال إعلانات البانر الذكية. |
مراجع إضافية
- مثال HelloWorld: يعرض الحد الأدنى من تنفيذ جميع أشكال الإعلانات.