Globale Einstellungen

Die Klasse MobileAds bietet globale Einstellungen für das Google Mobile Ads SDK.

Anzeigenereignisse im Unity-Hauptthread auslösen

Das Google Mobile Ads SDK löst Ereignisse in einem anderen Thread als dem Unity-Hauptthread aus. Wenn Sie Anzeigenereignisse implementieren und mit Unity-Objekten interagieren, müssen Sie die Google Mobile Ads SDK-Ereignisse mit dem Unity-Hauptthread synchronisieren.

Sie können Anzeigenereignisse entweder manuell oder automatisch mit dem Unity-Hauptthread synchronisieren. Im letzteren Fall übernimmt das Google Mobile Ads SDK die Synchronisierung.

Empfohlen: Anzeigenereignisse manuell synchronisieren

Wenn Sie Anzeigenereignisse manuell synchronisieren möchten, verwenden Sie die Methode ExecuteInUpdate im Hauptthread. Sie müssen die Methode ExecuteInUpdate verwenden, wenn Sie mit UnityEngine-Objekten interagieren und die Property RaiseAdEventsOnUnityMainThread deaktiviert ist.

Im folgenden Beispiel wird ein Hintergrundthread protokolliert und eine Aktion ausgeführt, um mit UnityEngine-Objekten zu interagieren:

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

Synchronisierung bei Anzeigenereignissen automatisieren

Damit das Google Mobile Ads SDK Anzeigenereignisse synchronisieren kann, müssen Sie die MobileAds.RaiseAdEventsOnUnityMainThread-Property auf true festlegen:

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

Lautstärkeregelung für Videoanzeigen

Wenn in Ihrer App die Lautstärke separat eingestellt werden kann, z. B. für Musik oder Toneffekte, können Sie festlegen, dass Videoanzeigen an die jeweils gewählte Lautstärke angepasst werden. So werden Nutzern Videoanzeigen in der erwarteten Lautstärke präsentiert.

Die Lautstärke des Geräts, die über die Lautstärketasten oder den Lautstärkeregler auf Betriebssystemebene gesteuert wird, bestimmt die Lautstärke für die Audioausgabe des Geräts. Apps können jedoch unabhängig voneinander die Lautstärkepegel relativ zur Gerätelautstärke anpassen, um das Audioerlebnis zu optimieren.

Sie können die relative App-Lautstärke an das Google Mobile Ads SDK melden, indem Sie die Methode SetApplicationVolume() aufrufen, bevor Sie die Anzeige laden. Gültige Werte für die Anzeigenlautstärke reichen von 0.0 (lautlos) bis 1.0 (aktuelle Gerätelautstärke). Hier ist ein Beispiel dafür, wie Sie das relative App-Volumen an das SDK melden:

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

Rufen Sie die Methode SetApplicationMuted() auf, bevor Sie die Anzeige laden, um dem SDK mitzuteilen, dass die Lautstärke der App stummgeschaltet wurde:

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

Standardmäßig ist die App-Lautstärke auf 1, die aktuelle Gerätelautstärke, eingestellt und die App ist nicht stummgeschaltet.

Wenn Ihre App spezielle Anforderungen hat, können Sie den optionalen Schlüssel ApplicationPreferences gad_has_consent_for_cookies auf null setzen, um eingeschränkte Anzeigen zu aktivieren:

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

Android-Minifizierung

Mit dieser Unity-Veröffentlichungsoption können Sie die Java-Code-Minimierung aktivieren. Wenn Sie die Minimierung aktivieren, müssen Sie auch eine benutzerdefinierte ProGuard-Datei erstellen, um Klassen beizubehalten, auf die vom SDK verwiesen wird.

  1. Benutzerdefinierte ProGuard-Datei aktivieren

    Gehen Sie zu Projekteinstellungen > Player > Android > Veröffentlichungseinstellungen > Build und wählen Sie Folgendes aus:

    • Benutzerdefinierte ProGuard-Datei
  2. Öffnen Sie /Assets/Plugins/Android/proguard-user.txt und fügen Sie Folgendes hinzu:

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

Absturzberichte deaktivieren

Das Google Mobile Ads SDK erfasst Absturzberichte zu Debugging- und Analysezwecken. Sie können diese Absturzberichte mit dem folgenden Code deaktivieren. In den folgenden Abschnitten wird beschrieben, wie Sie die Absturzberichterstattung unter Android und iOS deaktivieren.

Android

Fügen Sie der Datei AndroidManifest.xml Ihrer App das <meta-data>-Tag mit DISABLE_CRASH_REPORTING auf true gesetzt hinzu:

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

iOS

Rufen Sie die Methode DisableSDKCrashReporting auf, um Absturzberichte unter iOS zu deaktivieren:

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

Unity-Plug-in-Version abrufen

Führen Sie den folgenden Befehl aus, um die Unity SDK-Version abzurufen:

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

Plattformversion abrufen

Das Google Mobile Ads SDK für Unity ist von den Android- und iOS-Plattform-SDKs abhängig. Führen Sie den folgenden Befehl aus, um die Version des Plattform-SDK abzurufen:

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