إعداد إضافة "إعلانات Google على الأجهزة الجوّالة" في Unity

اختيار النظام الأساسي: Android iOS Unity Flutter Android (إصدار قديم)

يتيح المكوّن الإضافي لإعلانات Google على الأجهزة الجوّالة لـ Unity لمطوّري Unity عرض إعلانات Google على الأجهزة الجوّالة في تطبيقات Android وتطبيقات iOS بدون الحاجة إلى كتابة رمز Java أو Objective-C. يوفر المكوّن الإضافي واجهة C# لطلب الإعلانات تستخدمها نصوص C# البرمجية في مشروع Unity.

هذا الدليل مخصّص للناشرين الذين يريدون تحقيق الربح من تطبيق Unity.

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

  • استخدِم Unity Editor 2019.4 أو إصدارًا أحدث.
    • ننصح باستخدام الإصدار 2022.2 أو إصدار أحدث.
  • للنشر على iOS:
    • ‫Xcode 16.0 أو إصدار أحدث
    • استهداف الإصدار 13.0 أو إصدارًا أحدث من iOS
    • CocoaPods
  • للنشر على Android:
    • المستوى 24 من واجهة برمجة التطبيقات (API) أو مستوى أحدث من Android
    • استهداف المستوى 35 من واجهة برمجة التطبيقات (API) أو مستوى أحدث من Android

يتم ضبط مستوى واجهة برمجة التطبيقات (API) في Android ضِمن إعدادات المشروع > المشغّل > Android > إعدادات أخرى > إعدادات أخرى.

استيراد المكوّن الإضافي لإعلانات الأجهزة الجوّالة لـ Unity

OpenUPM-CLI

إذا كان لديك OpenUPM CLI مثبّتًا، يمكنك تثبيت سجلّ OpenUPM باستخدام الأمر التالي:

openupm add com.google.ads.mobile

إزالة مواد عرض المكوّن الإضافي .unitypackage

إذا كنت تنتقل من استخدام .unitypackage إلى استخدام OpenUPM، عليك إزالة مواد العرض يدويًا من الموقع القديم. أزِل الأدلة التالية التي تم استيرادها من .unitypackage

  • ‫Assets/ExternalDependencyManager
  • ‫Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

OpenUPM مع واجهة المستخدم

  1. افتح إعدادات مدير الحزم من خلال النقر على خيار قائمة Unity تعديل (Edit) > إعدادات المشروع (Project Settings) > مدير الحزم (Package Manager).
  2. أضِف OpenUPM كسجلّ ضمن النطاق إلى نافذة "مدير الحزم":

    Name: OpenUPM
    URL: https://package.openupm.com
    Scopes: com.google
    
  3. افتح قائمة مدير الحزم من خلال النقر على خيار قائمة Unity النافذة (Window) > مدير الحزم (Package Manager).

  4. اضبط القائمة المنسدلة لنطاق المدير على سجلّاتي.

  5. اختَر حزمة إعلانات Google على الأجهزة الجوّالة لـ Unity من قائمة الحزم وانقر على تثبيت (Install).

إزالة مواد عرض المكوّن الإضافي .unitypackage

إذا كنت تنتقل من استخدام .unitypackage إلى استخدام OpenUPM، عليك إزالة مواد العرض يدويًا من الموقع القديم. أزِل الأدلة التالية التي تم استيرادها من .unitypackage

  • ‫Assets/ExternalDependencyManager
  • ‫Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

OpenUPM

  1. احصل على علامة الإصدار لأحدث إصدار. العلامة التي يتم عرضها، باستثناء البادئة v، هي الإصدار Google Mobile Ads Unity Plugin.

    • macOS وLinux

      curl -sS https://api.github.com/repos/googleads/googleads-mobile-unity/releases/latest | jq -r '.tag_name'
    • ‫Windows PowerShell

      (Invoke-RestMethod -Uri "https://api.github.com/repos/googleads/googleads-mobile-unity/releases/latest").tag_name
      
  2. عدِّل ملف Packages/manifest.json لإضافة سجلّ OpenUPM ضمن النطاق والاعتمادية باستخدام الإصدار الذي تم الحصول عليه من الأمر السابق:

    {
      "scopedRegistries": [
        {
          "name": "google",
          "url": "https://package.openupm.com",
          "scopes": [
            "com.google"
          ]
        }
      ],
      "dependencies": {
        "com.google.ads.mobile": "11.6.0"
      }
    }
    

إزالة مواد عرض المكوّن الإضافي .unitypackage

إذا كنت تنتقل من استخدام .unitypackage إلى استخدام OpenUPM، عليك إزالة مواد العرض يدويًا من الموقع القديم. أزِل الأدلة التالية التي تم استيرادها من .unitypackage

  • ‫Assets/ExternalDependencyManager
  • ‫Assets/GoogleMobileAds
  • Assets/Plugins/Android/googlemobileads-unity.aar
  • Assets/Plugins/Android/GoogleMobileAdsPlugin
  • Assets/Plugins/iOS/GADUAdNetworkExtras
  • Assets/Plugins/iOS/unity-plugin-library.a

الاستيراد من GitHub

  1. نزِّل إصدار .unitypackage من GitHub.
  2. استورِد ملف .unitypackage من خلال النقر على خيار قائمة Unity مواد العرض (Assets) > استيراد حزمة (Import package) > حزمة مخصّصة (Custom Package) واستيراد جميع العناصر.

اختياري: إيقاف "مدير الاعتماديات الخارجية"

إذا كنت تدير مكتبات Android وiOS باستخدام أدوات الإنشاء الخاصة بك، يمكنك إيقاف حزمة com.unity.external-dependency-manager:

في Unity Editor، انقر على النافذة (Window) > مدير الحزم (Package Manager) وأزِل حزمة مدير الاعتماديات الخارجية (External Dependency Manager) (com.unity.external-dependency-manager). تؤدي إزالة هذه الحزمة إلى إزالة علامة التحديد من تفعيل "مدير الاعتماديات الخارجية" (Enable External Dependency Manager) ضِمن مواد العرض (Assets) > إعلانات Google على الأجهزة الجوّالة > الإعدادات (Settings).

تثبيت الإصدار القديم من "مدير الاعتماديات الخارجية"

إذا كان مشروعك يستخدم Unity 2022.2 أو إصدارًا أقدم، يمكنك تثبيت حزمة com.google.external-dependency-manager القديمة من Google بعد إيقاف حزمة Unity:

ضبط الاعتماديات الأصلية يدويًا

إذا كنت لا تستخدم حزمة "مدير الاعتماديات الخارجية"، أضِف المكتبات المطلوبة من الملفَين Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml وAssets/GoogleMobileAds/Editor/GoogleUmpDependencies.xml إلى ملفات الإنشاء:

  • بالنسبة إلى Android، انقر على تعديل (Edit) > إعدادات المشروع (Project Settings) > المشغّل (Player) > Android > إعدادات النشر (Publishing Settings) > الإنشاء (Build) وفعِّل نموذج Gradle الرئيسي المخصّص (Custom Main Gradle Template). أضِف المكتبات المطلوبة من الملفَين GoogleMobileAdsDependencies.xml وGoogleUmpDependencies.xml إلى قسم dependencies في الملف Assets/Plugins/Android/mainTemplate.gradle:

    implementation 'com.google.android.gms:play-services-ads:25.5.0'
    implementation 'com.google.android.ump:user-messaging-platform:4.0.0'
    

    أضِف أيضًا الحزم androidx.constraintlayout:constraintlayout وandroidx.lifecycle:lifecycle-process وandroidx.fragment:fragment باستخدام الإصدارات في الملف GoogleMobileAdsDependencies.xml.

  • بالنسبة إلى iOS، صدِّر مشروع Xcode. أضِف وحدات pod المطلوبة من الملفَين GoogleMobileAdsDependencies.xml وGoogleUmpDependencies.xml إلى الملف Podfile في مجلد المشروع الذي تم تصديره:

    pod 'Google-Mobile-Ads-SDK'
    pod 'GoogleUserMessagingPlatform'
    

    بعد ذلك، نفِّذ الأمر التالي في مجلد مشروع iOS الذي تم تصديره:

    pod install --repo-update

ضبط رقم تعريف تطبيقك على AdMob

في Unity Editor، انقر على مواد العرض (Assets) > إعلانات Google على الأجهزة الجوّالة > الإعدادات (Settings) من القائمة.

أدخِل رقم تعريف تطبيقك على AdMob لنظامَي Android وiOS في كل حقل.

Google Mobile Ads Unity Plugin تحفظ هذه الإعدادات كنص في ملف الإعداد Assets/GoogleMobileAds/Resources/GoogleMobileAdsSettings.asset.

إعداد حزمة تطوير البرامج (SDK)

قبل تحميل الإعلانات، اطلب من تطبيقك إعداد Google Mobile Ads Unity Plugin من خلال استدعاء MobileAds.Initialize(). يجب إجراء ذلك مرة واحدة فقط، ويُفضّل أن يكون ذلك عند فتح التطبيق.

في ما يلي مثال على كيفية استدعاء MobileAds.Initialize():

MobileAds.Initialize((InitializationStatus initstatus) =>
{
    if (initstatus == null)
    {
        Debug.LogError("Google Mobile Ads initialization failed.");
        return;
    }

    Debug.Log("Google Mobile Ads initialization complete.");

    MobileAdsEventExecutor.ExecuteInUpdate(() =>
    {
        // Interact with UnityEngine objects on the main thread here.
    });
});

التفاعل مع عناصر Unity على سلسلة التعليمات الرئيسية

Google Mobile Ads Unity Plugin تُصدر أحداث الإعلانات على سلسلة تعليمات في الخلفية. إذا كانت معاودة الاتصال بالإعلانات تتفاعل مع عناصر Unity، مثل UnityEngine، عليك جدولة هذا العمل بشكلٍ صريح على سلسلة التعليمات الرئيسية في Unity باستخدام طريقة MobileAdsEventExecutor.ExecuteInUpdate. للاطّلاع على تفاصيل التنفيذ، يُرجى مراجعة مقالة إصدار أحداث الإعلانات على سلسلة التعليمات الرئيسية في Unity.

اختيار شكل الإعلان

Google Mobile Ads Unity Plugin تمت الآن تضمينها في تطبيق Unity عند النشر على منصة Android أو iOS. أنت الآن جاهز لعرض إعلان. تقدّم AdMob عددًا من أشكال الإعلانات المختلفة، ما يتيح لك اختيار الشكل الذي يوفّر أفضل تجربة للمستخدم.

تعرض الوحدات الإعلانية لإعلانات بانر إعلانات مستطيلة تشغل جزءًا من تصميم التطبيق. ويمكن تحديثها تلقائيًا بعد فترة زمنية معيّنة. وهذا يعني أنّ المستخدمين سيشاهدون إعلانًا جديدًا على فترات زمنية منتظمة، حتى إذا ظلّوا على الشاشة نفسها في تطبيقك. ويُعدّ هذا الشكل أبسط أشكال الإعلانات التي يمكن تنفيذها.

عرض "إعلانات بانر"

إعلان بيني

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

عرض "الإعلانات البينية"

مدمج مع المحتوى

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

عرض "الإعلانات المدمجة مع المحتوى"

تمت المكافأة

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

عرض "الإعلانات مقابل مكافأة"

إعلان بيني مقابل مكافأة

"إعلان بيني مقابل مكافأة" هو نوع جديد من أشكال الإعلانات المحفَّزة، حيث يحصل المستخدم على مكافآت، مثل العملات أو محاولات لعب إضافية، عند مشاهدة الإعلان الذي يظهر تلقائيًا خلال الانتقالات الطبيعية داخل التطبيق.

على عكس "الإعلانات مقابل مكافأة"، لا يُطلب من المستخدمين الموافقة على عرض "إعلان بيني بمكافأة".

وبدلاً من رسالة طلب الموافقة داخل "الإعلانات مقابل مكافأة"، تتطلّب "الإعلانات البينية بمكافأة" شاشة تمهيدية تُعلن عن المكافأة وتمنح المستخدمين فرصة للإيقاف إذا أرادوا إجراء ذلك.

عرض إعلانات بينية مقابل مكافأة

إعلان على شاشة فتح التطبيق

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

عرض "الإعلانات على شاشة فتح التطبيق"