Класс MobileAds
предоставляет глобальные настройки для Google Mobile Ads SDK.
Вызов рекламных событий в главном потоке Unity
Google Mobile Ads SDK генерирует события в потоке, отличном от основного потока Unity. Если вы реализуете рекламные события и взаимодействуете с объектами Unity, необходимо синхронизировать события Mobile Ads SDK с основным потоком Unity.
Синхронизируйте рекламные события с основным потоком Unity вручную или автоматически, позволив Google Mobile Ads SDK выполнять синхронизацию.
Синхронизируйте рекламные события вручную
Для синхронизации рекламных событий вручную используйте метод ExecuteInUpdate
в основном потоке. Этот метод необходимо использовать, когда свойство RaiseAdEventsOnUnityMainThread
отключено и взаимодействует с объектами UnityEngine.
В следующем примере регистрируется фоновый поток и запускается действие для взаимодействия с объектами UnityEngine:
rewardedAd.OnAdPaid += (AdValue value) =>
{
// Log the ad value immediately.
UnityEngine.Debug.Log($"Received ad value of {value.Value} {value.CurrencyCode}.");
MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
// Interact with UnityEngine objects here.
});
};
Автоматизируйте синхронизацию по рекламным событиям
Чтобы 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;
}
}
Регулировка громкости видеорекламы
Если в вашем приложении есть собственные регуляторы громкости, например, пользовательская музыка или звуковые эффекты, то передача данных о громкости приложения в Google Mobile Ads SDK позволит видеорекламе учитывать настройки громкости приложения. Это гарантирует, что пользователи будут видеть видеорекламу с ожидаемой громкостью звука.
Громкость звука устройства регулируется кнопками регулировки громкости или ползунком на уровне ОС. Однако приложения могут самостоятельно регулировать громкость относительно громкости устройства, чтобы настроить звучание под себя.
Вы можете сообщить об относительной громкости приложения в SDK Google Mobile Ads, вызвав метод SetApplicationVolume()
перед загрузкой рекламы. Допустимые значения громкости рекламы находятся в диапазоне от 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
(текущая громкость устройства), и приложение не отключается.
Согласие на файлы cookie
Если у вашего приложения особые требования, вы можете установить необязательный ключ ApplicationPreferences
gad_has_consent_for_cookies
на ноль, чтобы включить ограниченный показ рекламы (LTD) :
// Enable limited ads (LTD)
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Минификация Android
Этот параметр публикации Unity позволяет включить минимизацию Java-кода . При включении минимизации вам также потребуется создать специальный файл ProGuard для сохранения классов, на которые ссылается SDK.
Включить пользовательский файл Proguard
Перейдите в Настройки проекта > Плеер > Android > Настройки публикации > Сборка и выберите:
- Пользовательский файл Proguard
Откройте
/Assets/Plugins/Android/proguard-user.txt
и добавьте следующее:
-keep class com.google.** { public *; }
Отключить отчеты о сбоях
Google Mobile Ads SDK собирает отчёты о сбоях для отладки и анализа. Вы можете отключить эти отчёты с помощью следующего кода. В следующих разделах описано, как отключить отчёты о сбоях на Android и 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
, чтобы отключить отчеты о сбоях в iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Получить версию плагина Unity
Чтобы получить версию Unity SDK, выполните следующее:
// Get the unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Получить версию платформы
Google Mobile Ads SDK для Unity зависит от платформ Android и iOS SDK. Чтобы получить версию платформы SDK, выполните следующую команду:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());