الإعلانات المدمجة مع المحتوى التي تظهر على سطح الفيديو

البدء

يتم عرض الإعلانات المدمجة مع المحتوى التي تظهر على سطح الفيديو للمستخدمين من خلال مكونات واجهة المستخدم المدمجة مع المحتوى على المنصة. يتم عرض هذه الإعلانات في شكل طبقة أعلى التطبيق. هذا مشابه لطريقة عمل إعلانات البانر، ولكن مع إمكانية تخصيص مظهر الإعلانات.

تتيح الإعلانات المدمجة مع المحتوى التي تظهر على سطح الفيديو إمكانية التوسّط وإعلانات الفيديو. هذه ميزة رئيسية وتفوق الإعلانات التي تظهر على سطح الفيديو الإعلانات المدمجة مع المحتوى على الإعلانات المدمجة مع المحتوى.

يوضّح لك هذا الدليل كيفية تنفيذ الإعلانات التي تظهر على سطح الفيديو المدمجة مع المحتوى في تطبيق Unity كبعض الأشياء المهمة التي يجب مراعاتها طوال العملية.

المتطلبات الأساسية

  • أكمِل دليل البدء.
  • الإصدار 9.0.0 من المكوّن الإضافي Unity أو الإصدار الأحدث.

الاختبار دائمًا باستخدام الإعلانات الاختبارية

يحتوي نموذج الرمز التالي على رقم تعريف وحدة إعلانية يمكنك استخدامه لطلب اختبار الإعلانات. تم إعدادها خصيصًا لعرض إعلانات اختبارية بدلاً من لكل طلب، مما يجعلها آمنة للاستخدام.

ومع ذلك، بعد تسجيل تطبيق في واجهة ويب AdMob وأنشأت وحدتك الإعلانية الخاصة أرقام التعريف التي سيتم استخدامها في تطبيقك، يجب ضبط جهازك كاختبار بشكلٍ صريح الجهاز أثناء والتطوير.

Android

ca-app-pub-3940256099942544/2247696110

iOS

ca-app-pub-3940256099942544/3986624511

تحميل الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو

يتم الانتهاء من تحميل "إعلان مدمج مع المحتوى" يظهر على سطح الفيديو باستخدام طريقة Load() الثابتة على للفئة NativeOverlayAd. يتوفّر عنصر NativeOverlayAd الذي تم تحميله على النحو التالي: معلمة في معالج الإكمال.

يستخدم الرمز التالي NativeOverlayAd لتحميل إعلان:



  // These ad units are configured to always serve test ads.
#if UNITY_ANDROID
  private string _adUnitId = "ca-app-pub-3940256099942544/2247696110";
#elif UNITY_IPHONE
  private string _adUnitId = "ca-app-pub-3940256099942544/3986624511";
#else
  private string _adUnitId = "unused";
#endif


private NativeOverlayAd _nativeOverlayAd;

/// <summary>
/// Loads the ad.
/// </summary>
public void LoadAd()
{
    // Clean up the old ad before loading a new one.
    if (_nativeOverlayAd != null)
    {
        DestroyAd();
    }

    Debug.Log("Loading native overlay ad.");

    // Create a request used to load the ad.
    var adRequest = new AdRequest();

    // Optional: Define native ad options.
    var options = new NativeAdOptions
    {
        AdChoicesPosition = AdChoicesPlacement.TopRightCorner,
        MediaAspectRatio = NativeMediaAspectRatio.Any,
    };

    // Send the request to load the ad.
    NativeOverlayAd.Load(_adUnitId, adRequest, options,
        (NativeOverlayAd ad, LoadAdError error) =>
    {
        if (error != null)
        {
            Debug.LogError("Native Overlay ad failed to load an ad " +
                           " with error: " + error);
            return;
        }

        // The ad should always be non-null if the error is null, but
        // double-check to avoid a crash.
        if (ad == null)
        {
            Debug.LogError("Unexpected error: Native Overlay ad load event " +
                           " fired with null ad and null error.");
            return;
        }

        // The operation completed successfully.
        Debug.Log("Native Overlay ad loaded with response : " +
                   ad.GetResponseInfo());
        _nativeOverlayAd = ad;

        // Register to ad events to extend functionality.
        RegisterEventHandlers(ad);
    });
}

عرض "الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو" وتصميمه

يتم عرض الإعلانات المدمجة مع المحتوى التي تظهر على سطح الفيديو باستخدام NativeTemplateStyle. هذا الصف تحدِّد الحقول التي تمكّنك من تخصيص مظهر الإعلان.

وTemplateID هي سلسلة مطلوبة تحدّد النموذج الأصلي المستخدَم لعرض الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو. استخدِم الثابت NativeTemplateID لاختيار نموذج مدمج مع المحتوى مناسب لإعلانك

يعرض الرمز التالي الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو باستخدام نموذج متوسط نمط مخصص.

/// <summary>
/// Renders the ad.
/// </summary>
public void RenderAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Rendering Native Overlay ad.");

        // Define a native template style with a custom style.
        var style = new NativeTemplateStyle
        {
            TemplateID = NativeTemplateID.Medium,
            MainBackgroundColor = Color.red,
            CallToActionText = new NativeTemplateTextStyles
            {
                BackgroundColor = Color.green,
                FontColor = Color.white,
                FontSize = 9,
                Style = NativeTemplateFontStyle.Bold
            }
        };

        // Renders a native overlay ad at the default size
        // and anchored to the bottom of the screne.
        _nativeOverlayAd.RenderTemplate(style, AdPosition.Bottom);
    }
}

إظهار الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو وإخفاؤه

يوضح الرمز التالي كيفية عرض إعلان يظهر على سطح الفيديو مدمج مع المحتوى.

/// <summary>
/// Shows the ad.
/// </summary>
public void ShowAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Showing Native Overlay ad.");
        _nativeOverlayAd.Show();
    }
}

إخفاء الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو

يوضح الرمز التالي كيفية إخفاء إعلان مدمج مع المحتوى يظهر على سطح الفيديو.

/// <summary>
/// Hides the ad.
/// </summary>
public void HideAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Hiding Native Overlay ad.");
        _nativeOverlayAd.Hide();
    }
}

تدمير الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو

عند الانتهاء من استخدام "الإعلان المدمج مع المحتوى الذي يظهر على سطح الفيديو"، احرص على استدعاء Destroy() إصدار الموارد.

/// <summary>
/// Destroys the native overlay ad.
/// </summary>
public void DestroyAd()
{
    if (_nativeOverlayAd != null)
    {
        Debug.Log("Destroying native overlay ad.");
        _nativeOverlayAd.Destroy();
        _nativeOverlayAd = null;
    }
}

الخطوات التالية