تنظیمات جهانی

کلاس MobileAds تنظیمات سراسری برای Google Mobile Ads Unity Plugin را ارائه می‌دهد.

رویدادهای تبلیغاتی را در تاپیک اصلی Unity مطرح کنید

Google Mobile Ads Unity Plugin رویدادها را در نخی متفاوت از نخ اصلی یونیتی اجرا می‌کند. اگر رویدادهای تبلیغاتی را پیاده‌سازی می‌کنید و با اشیاء یونیتی تعامل دارید، باید رویدادهای Google Mobile Ads Unity Plugin را با نخ اصلی یونیتی همگام‌سازی کنید.

رویدادهای تبلیغاتی را با نخ اصلی Unity به صورت دستی یا خودکار، با اجازه دادن به Google Mobile Ads Unity Plugin همگام‌سازی کنید.

توصیه شده: همگام‌سازی دستی رویدادهای تبلیغاتی

برای همگام‌سازی دستی رویدادهای تبلیغاتی، از متد ExecuteInUpdate در نخ اصلی استفاده کنید. شما باید هنگام تعامل با اشیاء UnityEngine و در حالی که ویژگی RaiseAdEventsOnUnityMainThread غیرفعال است، از متد ExecuteInUpdate استفاده کنید.

مثال زیر یک نخ پس‌زمینه را ثبت می‌کند و عملی را برای تعامل با اشیاء UnityEngine اجرا می‌کند:

// Google Mobile Ads events are raised off the Unity main thread.

// This log is executed off the Unity main thread.
// Write all time-sensitive code before ExecuteInUpdate().
Debug.Log("Executing off the Unity main thread.");

// Use ExecuteInUpdate to run code on the main thread, allowing you to
// interact with Unity UI and GameObjects.
// Changed to fully-qualified name to resolve CS0103
GoogleMobileAds.Common.MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
    // This callback may be delayed on Android until the user returns to the app.
    Debug.Log("Executing on the Unity main thread.");

    // Place all code that interacts with Unity UI and GameObjects inside this callback.
    if (_myGameObject != null)
    {
        _myGameObject.SetActive(true);
    }
});

همگام‌سازی خودکار در رویدادهای تبلیغاتی

برای همگام‌سازی رویدادهای تبلیغات Google Mobile Ads Unity Plugin ، ویژگی MobileAds.RaiseAdEventsOnUnityMainThread را روی true تنظیم کنید:

...
using GoogleMobileAds.Api;
...
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
    public void Start()
    {
        // When true all events raised by GoogleMobileAds will be raised
        // on the Unity main thread. The default value is false.
        MobileAds.RaiseAdEventsOnUnityMainThread = true;
    }
}

کنترل صدای تبلیغات ویدیویی

اگر برنامه شما کنترل‌های صدای مخصوص به خود را دارد، مانند موسیقی سفارشی یا میزان صدای جلوه‌های صوتی، افشای میزان صدای برنامه به Google Mobile Ads Unity Plugin به تبلیغات ویدیویی این امکان را می‌دهد که از تنظیمات صدای برنامه پیروی کنند. این امر تضمین می‌کند که کاربران تبلیغات ویدیویی را با میزان صدای مورد انتظار دریافت می‌کنند.

میزان صدای دستگاه که از طریق دکمه‌های تنظیم صدا یا اسلایدر صدای سیستم عامل کنترل می‌شود، میزان صدای خروجی دستگاه را تعیین می‌کند. با این حال، برنامه‌ها می‌توانند به طور مستقل میزان صدا را نسبت به صدای دستگاه تنظیم کنند تا تجربه صوتی را متناسب سازند.

شما می‌توانید با فراخوانی متد SetApplicationVolume() قبل از بارگذاری تبلیغ، میزان صدای نسبی برنامه را به Google Mobile Ads Unity Plugin گزارش دهید. مقادیر معتبر صدای تبلیغ از 0.0 (بی‌صدا) تا 1.0 (صدای دستگاه فعلی) متغیر است. در اینجا مثالی از نحوه گزارش صدای نسبی برنامه به SDK آورده شده است:

// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);

برای اینکه به SDK اطلاع دهید که صدای برنامه بی‌صدا شده است، قبل از بارگذاری تبلیغ، متد SetApplicationMuted() را فراخوانی کنید:

// Set app to be muted.
MobileAds.SetApplicationMuted(true);

به طور پیش‌فرض، میزان صدای برنامه روی 1 ، میزان صدای فعلی دستگاه، تنظیم شده است و برنامه بی‌صدا نیست.

اگر برنامه شما الزامات خاصی دارد، می‌توانید کلید اختیاری ApplicationPreferences gad_has_consent_for_cookies روی صفر تنظیم کنید تا تبلیغات محدود فعال شود:

// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);

کوچک‌سازی اندروید

این گزینه انتشار Unity به شما امکان می‌دهد تا کوچک‌سازی کد جاوا را فعال کنید. اگر کوچک‌سازی را فعال کنید، باید یک فایل proguard سفارشی نیز ایجاد کنید تا کلاس‌ها توسط SDK ارجاع داده شوند.

  1. فعال کردن فایل Proguard سفارشی

    به تنظیمات پروژه > پخش‌کننده > اندروید > تنظیمات انتشار > ساخت بروید و موارد زیر را انتخاب کنید:

    • فایل پروگارد سفارشی
  2. /Assets/Plugins/Android/proguard-user.txt را باز کنید و موارد زیر را به آن اضافه کنید:

-keep class com.google.** { public *; }

غیرفعال کردن گزارش خرابی

Google Mobile Ads Unity Plugin گزارش‌های خرابی را برای اهداف اشکال‌زدایی و تحلیل جمع‌آوری می‌کند. برای غیرفعال کردن گزارش خرابی، به بخش‌های زیر برای اندروید و iOS مراجعه کنید.

اندروید

تگ <meta-data> را با مقدار DISABLE_CRASH_REPORTING که روی true تنظیم شده است، در فایل AndroidManifest.xml برنامه خود اضافه کنید:

<manifest>
   <application>
       <meta-data
           android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
           android:value="true" />
   </application>
</manifest>

آی‌او‌اس

برای غیرفعال کردن گزارش‌های خرابی در iOS، متد DisableSDKCrashReporting را فراخوانی کنید:

void Awake() {
  MobileAds.DisableSDKCrashReporting();
}

دریافت نسخه افزونه یونیتی

برای دریافت نسخه Unity SDK، دستور زیر را اجرا کنید:

// Get the Unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());

دریافت نسخه پلتفرم

Google Mobile Ads Unity Plugin برای Unity به SDK های پلتفرم اندروید و iOS بستگی دارد. برای دریافت نسخه SDK پلتفرم، دستور زیر را اجرا کنید:

// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());