الإعلانات البينية هي إعلانات بملء الشاشة تغطي واجهة التطبيق المضيف. وعادةً ما تظهر في نقاط الانتقال الطبيعية في مسار عرض التطبيق، مثلاً خلال الوقت الفاصل بين مستويَين في لعبة. عندما يعرض تطبيق إعلانًا بينيًا، يمكن للمستخدم النقر على الإعلان والانتقال إلى صفحته المقصودة أو إغلاقه والعودة إلى التطبيق. دراسة حالة.
يوضّح هذا الدليل كيفية دمج "الإعلانات البينية" في تطبيق Unity.
المتطلبات الأساسية
قبل المتابعة، عليك إعداد Google Mobile Ads Unity Plugin.
الاختبار دائمًا باستخدام الإعلانات الاختبارية
يحتوي نموذج الرمز البرمجي التالي على رقم تعريف وحدة إعلانية يمكنك استخدامه لطلب إعلانات اختبارية. تم إعداده خصيصًا لعرض إعلانات اختبارية بدلاً من الإعلانات النهائية لكل طلب، ما يجعله آمنًا للاستخدام.
بعد تسجيل تطبيق في واجهة ويب AdMob وإنشاء أرقام تعريف الوحدات الإعلانية الخاصة بك لاستخدامها في تطبيقك، عليك إعداد جهازك بشكلٍ صريح على أنّه جهاز اختباري أثناء عملية التطوير.
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
إعداد Google Mobile Ads Unity Plugin
قبل تحميل الإعلانات، يجب أن يُعدّ تطبيقك Google Mobile Ads Unity Plugin من خلال استدعاء
MobileAds.Initialize(). يجب إجراء ذلك مرة واحدة فقط، ويُفضّل عند تشغيل التطبيق.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
إذا كنت تستخدم التوسّط، عليك الانتظار إلى أن يتم تنفيذ معاودة الاتصال قبل تحميل الإعلانات، لأنّ ذلك سيضمن إعداد جميع محوّلات التوسّط.
تحميل الإعلان البيني
يتم تحميل "الإعلان البيني" باستخدام الطريقة الثابتة Load() في الفئة InterstitialAd. تتطلّب طريقة التحميل رقم تعريف وحدة إعلانية وكائن AdRequest ومعالج إكمال يتم استدعاؤه عند نجاح تحميل الإعلان أو فشله. يتم توفير كائن InterstitialAd الذي تم تحميله كمعلَمة في معالج الإكمال. يعرض المثال التالي كيفية تحميل InterstitialAd:
استبدِل AD_UNIT_ID برقم تعريف الوحدة الإعلانية.
عرض الإعلان البيني
لعرض "إعلان بيني" تم تحميله، عليك استدعاء طريقة Show() في مثيل InterstitialAd. يمكن عرض الإعلانات مرة واحدة لكل عملية تحميل. استخدِم طريقة CanShowAd() للتأكّد من أنّ الإعلان جاهز للعرض.
if (interstitialAd != null && interstitialAd.CanShowAd())
{
interstitialAd.Show();
}
الاستماع إلى أحداث "الإعلان البيني"
لتخصيص سلوك إعلانك بشكلٍ أكبر، يمكنك ربط عدد من الأحداث في دورة حياة الإعلان. يعرض المثال التالي كيفية الاستماع إلى أحداث الإعلان:
interstitialAd.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
interstitialAd.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
interstitialAd.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
interstitialAd.OnAdFullScreenContentOpened += () =>
{
// Raised when the ad opened full screen content.
};
interstitialAd.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
interstitialAd.OnAdFullScreenContentFailed += (AdError error) =>
{
// Raised when the ad failed to open full screen content.
};
تنظيف "الإعلان البيني"
عند الانتهاء من استخدام InterstitialAd، احرص على استدعاء طريقة Destroy() قبل إسقاط مرجعك إليه:
if (interstitialAd != null)
{
interstitialAd.Destroy();
}
يُعلم ذلك المكوّن الإضافي بأنّ الكائن لم يعُد مستخدَمًا ويمكن استرداد الذاكرة التي يشغلها. سيؤدي عدم استدعاء هذه الطريقة إلى تسرّب الذاكرة.
تحميل "الإعلان البيني" التالي مسبقًا
"الإعلانات البينية" هي كائنات تُستخدم مرة واحدة. يعني ذلك أنّه بعد عرض "إعلان بيني"، لا يمكن استخدام الكائن مرة أخرى. لطلب "إعلان بيني" آخر، عليك إنشاء كائن InterstitialAd جديد.
لإعداد "إعلان بيني" لفرصة ظهور الإعلان التالية، عليك تحميل "الإعلان البيني" مسبقًا بعد ظهور حدث الإعلان OnAdFullScreenContentClosed أو OnAdFullScreenContentFailed.
أفضل الممارسات
- حدِّد ما إذا كانت "الإعلانات البينية" هي نوع الإعلان المناسب لتطبيقك.
- تكون "الإعلانات البينية" أكثر فعالية في التطبيقات التي تتضمّن نقاط انتقال طبيعية. يُنشئ إكمال مهمة في التطبيق، مثل مشاركة صورة أو إنهاء مستوى في اللعبة، نقطة انتقال كهذه. عليك تحديد النقاط التي يكون من الأفضل فيها عرض "الإعلانات البينية" في مسار عرض تطبيقك وكيف من المرجّح أن يتفاعل المستخدم معها.
- أوقِف الإجراء مؤقتًا عند عرض "إعلان بيني".
- هناك عدد من الأنواع المختلفة من "الإعلانات البينية"، مثل الإعلانات النصية أو الصورية أو الفيديو. من المهم التأكّد من أنّه عندما يعرض تطبيقك "إعلانًا بينيًا"، فإنّه يعلّق أيضًا استخدام بعض الموارد للسماح للإعلان بالاستفادة منها. على سبيل المثال، عند إجراء مكالمة لعرض "إعلان بيني"، احرص على إيقاف أي إخراج صوتي ينتجه تطبيقك مؤقتًا. يمكنك استئناف تشغيل الأصوات في حدث
OnAdFullScreenContentClosed()، الذي يمكن استدعاؤه عندما ينتهي المستخدم من التفاعل مع الإعلان. بالإضافة إلى ذلك، ننصحك بإيقاف أي مهام حسابية مكثّفة مؤقتًا، مثل حلقة اللعبة، أثناء عرض الإعلان. يضمن ذلك عدم مواجهة المستخدم رسومات بطيئة أو غير مستجيبة أو فيديو متقطّع. - عدم عرض كمّ هائل من الإعلانات للمستخدمين:
- زيادة معدّل تكرار "الإعلانات البينية" في تطبيقك قد تبدو ملائمة لزيادة الإيرادات، لكنّها قد تؤدي أيضًا إلى تدهور تجربة المستخدم وانخفاض نسب النقر إلى الظهور. يجب الحرص على عدم مقاطعة تجربة المستخدمين بشكل متكرر بما يحول دون استمتاعهم بتطبيقك.
مراجع إضافية
- مثال HelloWorld: تنفيذ بسيط لجميع أشكال الإعلانات