إعلانات البانر التكيُّفية هي الجيل التالي من الإعلانات المتجاوبة التي تعمل على زيادة الأداء من خلال تحسين حجم الإعلان لكل جهاز. تحسين أداء إعلانات البانر الذكية التي تدعم ارتفاعات ثابتة فقط، تتيح لك إعلانات البانر التكيُّفية تحديد عرض الإعلان وتستخدم هذا المقياس لتحديد الحجم الأمثل للإعلان
ولاختيار أفضل حجم للإعلان، تستخدم إعلانات البانر التكيُّفية نِسب عرض إلى ارتفاع ثابتة بدلاً من الارتفاعات الثابتة. يؤدي ذلك إلى عرض إعلانات بانر تشغل جزءًا أكثر اتساقًا الشاشة عبر الأجهزة وتوفر فرصًا لتحسين أدائه.
عند العمل مع إعلانات البانر التكيُّفية، تجدر الإشارة إلى أنّها ستعرض دائمًا الحجم الثابت لجهاز وعرض معين. بمجرد اختبار التخطيط على جهاز معين، يمكنك التأكد من أن حجم الإعلان لن يتغير. ومع ذلك، قد يتغيّر حجم تصميم إعلان البانر على جميع الأجهزة المختلفة. وبالتالي، نوصي بأن يتلاءم التصميم مع أي فروقات في ارتفاع الإعلان. في حالات نادرة، قد لا يتم ملء الحجم التكيُّفي الكامل وسيتم إنشاء تصميم إعلان بالحجم العادي في هذه الخانة بدلاً من ذلك.
المتطلبات الأساسية
- اتّبِع التعليمات الواردة في دليل البدء حول كيفية استيراد مكوّن "إعلانات Google على الأجهزة الجوّالة" في Unity وتضمين حزمة تطوير البرامج (SDK) لإعلانات Google على الأجهزة الجوّالة.
حالات استخدام إعلانات البانر التكيُّفية
تم تصميم إعلانات البانر التكيُّفية لتكون بديلاً للمنتج في المجال. حجم إعلان بانر القياسي 320x50 وتنسيق البانر الذكي الذي حل محله.
ويشيع استخدام أحجام إعلانات البانر هذه كإعلانات بانر ثابتة، والتي يتم استخدامها عادةً مقفل في الجزء العلوي أو السفلي من الشاشة.
وبالنسبة إلى إعلانات البانر الثابتة هذه، ستكون نسبة العرض إلى الارتفاع عند استخدام إعلانات البانر التكيُّفية. مشابه لإعلان قياسي مقاس 320×50، كما يتضح في الأمثلة الثلاثة أدناه:
بانر 320x50 |
بانر تكيُّفي |
البانر الذكي |
يستفيد إعلان البانر التكيُّفي من حجم الشاشة المتاح بشكلٍ أفضل. بالإضافة إلى ذلك، مقارنةً بإعلان البانر الذكي، فإنّ إعلان البانر التكيُّفي هو خيار أفضل لأنّه:
ويستخدم أي عرض تقدّمه، بدلاً من فرض عرض كامل الشاشة، ما يتيح لك مراعاة المنطقة الآمنة على نظام التشغيل iOS وعرض الفتحات على Android.
فهي تحدد الارتفاع الأمثل للجهاز المحدد، بدلاً من وجود ارتفاع ثابت عبر الأجهزة ذات الأحجام المختلفة، مما يخفف من آثار تجزئة الأجهزة.
ملاحظات التنفيذ
عند تنفيذ إعلانات البانر التكيُّفية في تطبيقك، يُرجى مراعاة النقاط التالية:
- يجب أن تعرف مدى العرض الذي سيتمّ وضع الإعلان فيه، وذلك يجب أن يأخذ في الاعتبار عرض الجهاز وأي مناطق آمنة أو والقواطع القابلة للتطبيق.
- تأكَّد من أنّ خلفية مشاهدة الإعلان معتمة لتتوافق مع سياسات AdMob عند عرض إعلانات ذات أحجام إعلانات أصغر عدم ملء الشريحة الإعلانية
- تأكَّد من استخدام أحدث إصدار من الإضافة "إعلانات Google على الأجهزة الجوّالة" في Unity. لاستخدام التوسّط، استخدِم أحدث إصدار من كلّ محوِّل توسّط.
- تم تصميم أحجام إعلانات البانر التكيُّفية لتعمل على أفضل نحو عند استخدام إعلانات البانر التكيُّفية. العرض المتاح. وفي معظم الحالات، سيكون هذا هو العرض الكامل لشاشة الجهاز المستخدم. ويجب مراعاة المناطق الآمنة السارية.
- ستعمل حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" على تغيير حجم إعلان البانر بارتفاع محسّن للإعلان. للعرض المحدّد عند استخدام واجهات برمجة تطبيقات AdSize التكيُّفية.
- تتوفّر ثلاث طرق للحصول على حجم إعلان مناسب:
AdSize.GetLandscapeAnchoredAdaptiveBannerAdSizeWithWidth
للوضع الأفقيAdSize.GetPortraitAnchoredAdaptiveBannerAdSizeWithWidth
للصورة العموديةAdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth
الاتجاه الحالي وقت التنفيذ. - سيكون الحجم المعروض لعرض معين على جهاز معين دائمًا نفس الشيء، لذلك بمجرد اختبار التخطيط على جهاز معين، يمكنك من أن حجم الإعلان لن يتغير.
- لا يزيد ارتفاع إعلان البانر الثابت أبدًا عن أقل من 15% من ارتفاع الجهاز أو 90 بكسل مستقل الكثافة ولا يقل أبدًا عن 50 وحدات بكسل مستقلة الكثافة.
- بالنسبة إلى إعلانات البانر بالعرض الكامل، يمكنك استخدام العلامة
AdSize.FullWidth
بدلاً من تقديم عرض محدّد.
البدء السريع
اتّبِع الخطوات التالية لتنفيذ إعلان بانر ثابت تكيُّفي بسيط.
- احصل على حجم إعلان بانر تكيُّفي. سيتم استخدام الحجم الذي تحصل عليه لطلب
إعلان البانر التكيُّفي. للحصول على حجم الإعلان التكيُّفي، تأكّد من إجراء ما يلي:
- احصل على عرض الجهاز المستخدَم بوحدات بكسل مستقلة عن الكثافة، أو اضبط
العرض الذي تريده إذا كنت لا تريد استخدام العرض الكامل للشاشة.
بما أنّ واجهات برمجة تطبيقات Unity مثل
Screen.width
تعرض وحدات بكسل مطلقة، يجب إجراء ما يلي: القسمة على مقياس الجهاز (قابلة للاسترجاع منMobileAds.Utils.GetDeviceScale()
). - استخدِم العلامة
AdSize.FullWidth
مع إعلانات البانر ذات العرض الكامل. - استخدم الطرق الثابتة المناسبة في فئة حجم الإعلان، مثل
AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(width)
للحصول على كائنAdSize
تكيُّفي مع الاتجاه الحالي.
- احصل على عرض الجهاز المستخدَم بوحدات بكسل مستقلة عن الكثافة، أو اضبط
العرض الذي تريده إذا كنت لا تريد استخدام العرض الكامل للشاشة.
بما أنّ واجهات برمجة تطبيقات Unity مثل
- أنشِئ عنصر
BannerView
باستخدام رقم تعريف وحدتك الإعلانية والحجم التكيُّفي الموضع الملائم لإعلانك. - أنشِئ كائن طلب إعلان وحمِّل البانر باستخدام الطريقة
LoadAd()
. في طريقة عرض الإعلان المُعدّة، تمامًا كما تفعل مع طلب إعلان بانر عادي.
مثال على الرمز البرمجي
في ما يلي مثال على نص برمجي يُحمِّل إعلان بانر تكيُّفيًا ويعيد تحميله ليلائم عرض الشاشة، مع مراعاة المنطقة الآمنة:
using UnityEngine;
using System;
using GoogleMobileAds.Api;
public class AdaptiveBannerSample : MonoBehaviour
{
private BannerView _bannerView;
// Use this for initialization
void Start()
{
// Set your test devices.
// https://developers.google.com/admob/unity/test-ads
RequestConfiguration requestConfiguration = new RequestConfiguration
{
TestDeviceIds = new List<string>
{
AdRequest.TestDeviceSimulator,
// Add your test device IDs (replace with your own device IDs).
#if UNITY_IPHONE
"96e23e80653bb28980d3f40beb58915c"
#elif UNITY_ANDROID
"75EF8D155528C04DACBBA6F36F433035"
#endif
}
};
MobileAds.SetRequestConfiguration(requestConfiguration);
// Initialize the Google Mobile Ads SDK.
MobileAds.Initialize((InitializationStatus status) =>
{
RequestBanner();
});
}
public void OnGUI()
{
GUI.skin.label.fontSize = 60;
Rect textOutputRect = new Rect(
0.15f * Screen.width,
0.25f * Screen.height,
0.7f * Screen.width,
0.3f * Screen.height);
GUI.Label(textOutputRect, "Adaptive Banner Example");
}
private void RequestBanner()
{
// These ad units are configured to always serve test ads.
#if UNITY_EDITOR
string adUnitId = "unused";
#elif UNITY_ANDROID
string adUnitId = "ca-app-pub-3212738706492790/6113697308";
#elif UNITY_IPHONE
string adUnitId = "ca-app-pub-3212738706492790/5381898163";
#else
string adUnitId = "unexpected_platform";
#endif
// Clean up banner ad before creating a new one.
if (_bannerView != null)
{
_bannerView.Destroy();
}
AdSize adaptiveSize =
AdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth(AdSize.FullWidth);
_bannerView = new BannerView(adUnitId, adaptiveSize, AdPosition.Bottom);
// Register for ad events.
_bannerView.OnBannerAdLoaded += OnBannerAdLoaded;
_bannerView.OnBannerAdLoadFailed += OnBannerAdLoadFailed;
AdRequest adRequest = new AdRequest();
// Load a banner ad.
_bannerView.LoadAd(adRequest);
}
#region Banner callback handlers
private void OnBannerAdLoaded(object sender, EventArgs args)
{
Debug.Log("Banner view loaded an ad with response : "
+ _bannerView.GetResponseInfo());
Debug.Log("Ad Height: {0}, width: {1}",
_bannerView.GetHeightInPixels(),
_bannerView.GetWidthInPixels());
}
private void OnBannerAdLoadFailed(LoadAdError error)
{
Debug.LogError("Banner view failed to load an ad with error : "
+ error);
}
#endregion
}
في ما يلي الدالة
AdSize.GetCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth
التي يتم استخدامها
للحصول على حجم بانر في موضع ثابت لاتجاه الواجهة
الحالي. لتحميل إعلان بانر ثابت في اتجاه معيّن مسبقًا، استخدِم
دالة ذات صلة من AdSize.GetPortraitAnchoredAdaptiveBannerAdSizeWithWidth
وAdSize.GetLandscapeAnchoredAdaptiveBannerAdSizeWithWidth
.