Ustawienia globalne

Klasa MobileAds zawiera globalne ustawienia Google Mobile Ads SDK.

Wywoływanie zdarzeń reklamowych w głównym wątku Unity

Google Mobile Ads SDK wywołuje zdarzenia w innym wątku niż wątek główny Unity. Jeśli wdrażasz zdarzenia reklam i wchodzisz w interakcje z obiektami Unity, musisz zsynchronizować zdarzenia Google Mobile Ads SDK z głównym wątkiem Unity.

Synchronizuj zdarzenia reklamowe z głównym wątkiem Unity ręcznie lub automatycznie, pozwalając na to Google Mobile Ads SDK.

Zalecane: ręczna synchronizacja zdarzeń związanych z reklamami

Aby ręcznie zsynchronizować zdarzenia reklam, użyj metody ExecuteInUpdate w głównym wątku. Podczas interakcji z obiektami UnityEngine musisz używać metody ExecuteInUpdate, a właściwość RaiseAdEventsOnUnityMainThread musi być wyłączona.

W przykładzie poniżej rejestrujemy wątek w tle i wykonujemy działanie, aby wchodzić w interakcje z obiektami 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.
    });
};

Automatyzacja synchronizacji zdarzeń związanych z reklamami

Aby zsynchronizować zdarzenia reklam, ustaw właściwość Google Mobile Ads SDK na true:MobileAds.RaiseAdEventsOnUnityMainThread

...
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;
    }
}

Kontrolowanie głośności reklam wideo

Jeśli aplikacja ma własną regulację głośności, np. głośność niestandardowej muzyki lub efektów dźwiękowych, udostępnienie informacji o głośności aplikacji usłudze Google Mobile Ads SDK umożliwia reklamom wideo dostosowanie się do ustawień głośności aplikacji. Dzięki temu użytkownicy będą widzieć reklamy wideo z oczekiwanym poziomem głośności.

Głośność urządzenia kontrolowana za pomocą przycisków głośności lub suwaka głośności na poziomie systemu operacyjnego określa głośność wyjścia audio urządzenia. Aplikacje mogą jednak niezależnie dostosowywać poziomy głośności względem głośności urządzenia, aby dostosować dźwięk.

Możesz zgłosić względną głośność aplikacji do Google Mobile Ads SDK, wywołując metodę SetApplicationVolume() przed wczytaniem reklamy. Prawidłowe wartości głośności reklamy mieszczą się w zakresie od 0.0 (cisza) do 1.0 (bieżąca głośność urządzenia). Oto przykład zgłaszania względnej głośności aplikacji do pakietu SDK:

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

Aby poinformować pakiet SDK, że głośność aplikacji została wyciszona, przed wczytaniem reklamy wywołaj metodę SetApplicationMuted():

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

Domyślnie głośność aplikacji jest ustawiona na 1, czyli bieżącą głośność urządzenia, a aplikacja nie jest wyciszona.

Jeśli Twoja aplikacja ma specjalne wymagania, możesz ustawić opcjonalny klucz ApplicationPreferences na 0, aby włączyć ograniczone wyświetlanie reklam:gad_has_consent_for_cookies

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

Minifikacja Androida

Ta opcja publikowania w Unity umożliwia włączenie minimalizacji kodu Java. Jeśli włączysz minifikację, musisz też utworzyć niestandardowy plik ProGuard, aby zachować klasy, do których odwołuje się pakiet SDK.

  1. Włącz niestandardowy plik ProGuard

    Otwórz Ustawienia projektu > Odtwarzacz > Android > Ustawienia publikowania > Kompilacja i wybierz:

    • Niestandardowy plik ProGuard
  2. Otwórz /Assets/Plugins/Android/proguard-user.txt i dodaj te elementy:

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

Wyłączanie zgłaszania awarii

Google Mobile Ads SDK zbiera raporty o awariach na potrzeby debugowania i analizy. Możesz wyłączyć raportowanie awarii za pomocą tego kodu. W sekcjach poniżej znajdziesz informacje o tym, jak wyłączyć raportowanie awarii na Androidzie i iOS.

Android

Dodaj tag <meta-data> z atrybutem DISABLE_CRASH_REPORTING ustawionym na true w pliku AndroidManifest.xml aplikacji:

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

iOS

Aby wyłączyć raporty o awariach na iOS, wywołaj metodę DisableSDKCrashReporting:

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

Pobieranie wersji wtyczki Unity

Aby uzyskać wersję pakietu Unity SDK, uruchom to polecenie:

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

Pobieranie wersji platformy

Google Mobile Ads SDK dla Unity zależy od pakietów SDK na platformy Android i iOS. Aby uzyskać wersję pakietu SDK platformy, uruchom to polecenie:

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