Die Klasse MobileAds bietet globale Einstellungen für das Google Mobile Ads Unity-Plug-in.
Anzeigenereignisse im Unity-Hauptthread auslösen
Das Google Mobile Ads Unity-Plug-in 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 Ereignisse des Google Mobile Ads Unity-Plug-ins mit dem Unity-Hauptthread synchronisieren.
Synchronisieren Sie Anzeigenereignisse entweder manuell oder automatisch mit dem Unity-Hauptthread. Im letzteren Fall übernimmt das Google Mobile Ads Unity-Plug-in 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 Unity-Plug-in Anzeigenereignisse synchronisieren kann, müssen Sie die MobileAds.RaiseAdEventsOnUnityMainThread-Eigenschaft 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. Dazu müssen Sie die App-Lautstärke im Google Mobile Ads Unity-Plug-in angeben. 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 Unity-Plug-in 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.
Einwilligung für Cookies
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.
Benutzerdefinierte ProGuard-Datei aktivieren
Gehen Sie zu Projekteinstellungen > Player > Android > Veröffentlichungseinstellungen > Build und wählen Sie Folgendes aus:
- Benutzerdefinierte ProGuard-Datei
Öffnen Sie
/Assets/Plugins/Android/proguard-user.txtund fügen Sie Folgendes hinzu:
-keep class com.google.** { public *; }
Absturzberichte deaktivieren
Das Google Mobile Ads Unity-Plug-in erfasst Absturzberichte für die Fehlerbehebung und Analyse. 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 Unity-Plug-in 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());