کلاس MobileAds تنظیمات سراسری برای SDK تبلیغات موبایلی گوگل (Google Mobile Ads SDK) را ارائه میدهد.
رویدادهای تبلیغاتی را در تاپیک اصلی Unity مطرح کنید
کیت توسعه نرمافزار تبلیغات موبایل گوگل (Google Mobile Ads SDK) رویدادها را در ترد متفاوتی نسبت به ترد اصلی یونیتی اجرا میکند. اگر رویدادهای تبلیغاتی را پیادهسازی میکنید و با اشیاء یونیتی تعامل دارید، باید رویدادهای کیت توسعه نرمافزار تبلیغات موبایل گوگل (Google Mobile Ads SDK) را با ترد اصلی یونیتی همگامسازی کنید.
رویدادهای تبلیغاتی را با نخ اصلی Unity به صورت دستی یا خودکار، با اجازه دادن به SDK تبلیغات موبایل گوگل برای مدیریت همگامسازی، همگامسازی کنید.
توصیه شده: همگامسازی دستی رویدادهای تبلیغاتی
برای همگامسازی دستی رویدادهای تبلیغاتی، از متد ExecuteInUpdate در thread اصلی استفاده کنید. شما باید هنگام تعامل با اشیاء UnityEngine و در حالی که ویژگی RaiseAdEventsOnUnityMainThread غیرفعال است، از متد ExecuteInUpdate استفاده کنید.
مثال زیر یک نخ پسزمینه را ثبت میکند و عملی را برای تعامل با اشیاء UnityEngine اجرا میکند:
rewardedAd.OnAdPaid += (AdValue value) =>
{
// Log the ad value immediately.
// Place all time-sensitive code outside of ExecuteInUpdate().
UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");
MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
// Interact with UnityEngine objects here.
// This method is delayed, don't put time sensitive code here.
});
};
همگامسازی خودکار در رویدادهای تبلیغاتی
برای اینکه SDK تبلیغات موبایلی گوگل (Google Mobile Ads SDK) رویدادهای تبلیغاتی را همگامسازی کند، ویژگی 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;
}
}
کنترل صدای تبلیغات ویدیویی
اگر برنامه شما کنترلهای صدای مخصوص به خود را دارد، مانند موسیقی سفارشی یا میزان صدای جلوههای صوتی، افشای میزان صدای برنامه به SDK تبلیغات موبایلی گوگل، به تبلیغات ویدیویی این امکان را میدهد که از تنظیمات صدای برنامه پیروی کنند. این امر تضمین میکند که کاربران تبلیغات ویدیویی را با میزان صدای مورد انتظار دریافت میکنند.
میزان صدای دستگاه که از طریق دکمههای تنظیم صدا یا اسلایدر صدای سیستم عامل کنترل میشود، میزان صدای خروجی دستگاه را تعیین میکند. با این حال، برنامهها میتوانند به طور مستقل میزان صدا را نسبت به صدای دستگاه تنظیم کنند تا تجربه صوتی را متناسب سازند.
شما میتوانید با فراخوانی متد SetApplicationVolume() قبل از بارگذاری تبلیغ، میزان صدای نسبی برنامه را به SDK تبلیغات موبایلی گوگل گزارش دهید. مقادیر معتبر صدای تبلیغ از 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 ارجاع داده شوند.
فعال کردن فایل Proguard سفارشی
به تنظیمات پروژه > پخشکننده > اندروید > تنظیمات انتشار > ساخت بروید و موارد زیر را انتخاب کنید:
- فایل پروگارد سفارشی
/Assets/Plugins/Android/proguard-user.txtرا باز کنید و موارد زیر را به آن اضافه کنید:
-keep class com.google.** { public *; }
غیرفعال کردن گزارش خرابی
کیت توسعه نرمافزاری تبلیغات موبایل گوگل (SDK) گزارشهای خرابی را برای اهداف اشکالزدایی و تحلیل جمعآوری میکند. میتوانید این گزارش خرابی را با کد زیر غیرفعال کنید. بخشهای بعدی نحوه غیرفعال کردن گزارش خرابی در اندروید و 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());
دریافت نسخه پلتفرم
کیت توسعه نرمافزاری تبلیغات موبایل گوگل برای یونیتی به کیت توسعه نرمافزاری پلتفرمهای اندروید و iOS بستگی دارد. برای دریافت نسخه کیت توسعه نرمافزاری پلتفرم، دستور زیر را اجرا کنید:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());