La classe MobileAds fornisce impostazioni globali per Google Mobile Ads Unity Plugin.
Genera eventi pubblicitari sul thread principale di Unity
Google Mobile Ads Unity Plugin genera eventi su un thread diverso dal thread principale di Unity. Se implementi eventi annuncio e interagisci con gli oggetti Unity, devi sincronizzare gli eventi Google Mobile Ads Unity Plugin con il thread principale di Unity.
Sincronizza gli eventi pubblicitari con il thread principale di Unity manualmente o automaticamente, consentendo a Google Mobile Ads Unity Plugin di gestire la sincronizzazione.
Consigliato: sincronizza manualmente gli eventi pubblicitari
Per sincronizzare manualmente gli eventi annuncio, utilizza il metodo ExecuteInUpdate sul thread principale. Devi utilizzare il metodo ExecuteInUpdate quando interagisci con gli oggetti UnityEngine e quando la proprietà RaiseAdEventsOnUnityMainThread è disattivata.
L'esempio seguente registra un thread in background ed esegue un'azione per interagire con gli oggetti UnityEngine:
// Google Mobile Ads events are raised off the Unity main thread.
// This log is executed off the Unity main thread.
// Write all time-sensitive code before ExecuteInUpdate().
Debug.Log("Executing off the Unity main thread.");
// Use ExecuteInUpdate to run code on the main thread, allowing you to
// interact with Unity UI and GameObjects.
// Changed to fully-qualified name to resolve CS0103
GoogleMobileAds.Common.MobileAdsEventExecutor.ExecuteInUpdate(() =>
{
// This callback may be delayed on Android until the user returns to the app.
Debug.Log("Executing on the Unity main thread.");
// Place all code that interacts with Unity UI and GameObjects inside this callback.
if (_myGameObject != null)
{
_myGameObject.SetActive(true);
}
});
Automatizzare la sincronizzazione degli eventi pubblicitari
Per sincronizzare gli eventi pubblicitari per Google Mobile Ads Unity Plugin, imposta la proprietà
MobileAds.RaiseAdEventsOnUnityMainThread su 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;
}
}
Controllo del volume degli annunci video
Se la tua app ha i propri controlli del volume, ad esempio volume personalizzato di musica o effetti sonori, la divulgazione del volume dell'app a Google Mobile Ads Unity Plugin consente agli annunci video di rispettare le impostazioni di volume dell'app. In questo modo, gli utenti vedranno gli annunci video con il volume audio previsto.
Il volume del dispositivo, controllato tramite i tasti del volume o il cursore del volume a livello di sistema operativo, determina il volume dell'uscita audio del dispositivo. Tuttavia, le app possono regolare indipendentemente i livelli di volume rispetto al volume del dispositivo per personalizzare l'esperienza audio.
Puoi segnalare il volume relativo dell'app a Google Mobile Ads Unity Plugin chiamando
il metodo SetApplicationVolume() prima di caricare l'annuncio. I valori validi del volume dell'annuncio
sono compresi tra 0.0 (silenzioso) e 1.0 (volume del dispositivo corrente). Ecco un
esempio di come segnalare il volume relativo dell'app all'SDK:
// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);
Per comunicare all'SDK che il volume dell'app è stato disattivato, chiama il metodo
SetApplicationMuted() prima di caricare l'annuncio:
// Set app to be muted.
MobileAds.SetApplicationMuted(true);
Per impostazione predefinita, il volume dell'app è impostato su 1, il volume del dispositivo corrente, e l'audio dell'app non è disattivato.
Consenso all'uso dei cookie
Se la tua app ha requisiti speciali, puoi impostare la chiave facoltativa
ApplicationPreferences gad_has_consent_for_cookies su zero per attivare
annunci con limitazioni
:
// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Riduzione delle dimensioni di Android
Questa opzione di pubblicazione di Unity ti consente di attivare la riduzione del codice Java. Se attivi la minimizzazione, devi anche creare un file ProGuard personalizzato per conservare le classi a cui fa riferimento l'SDK.
Abilita file Proguard personalizzato
Vai a Impostazioni progetto > Player > Android > Impostazioni di pubblicazione > Build e seleziona:
- File Proguard personalizzato
Apri
/Assets/Plugins/Android/proguard-user.txte aggiungi quanto segue:
-keep class com.google.** { public *; }
Disattivare la segnalazione di arresti anomali
Google Mobile Ads Unity Plugin raccoglie report sugli arresti anomali a scopo di debug e analisi. Per disattivare la segnalazione degli arresti anomali, consulta le sezioni seguenti per Android e iOS.
Android
Aggiungi il tag <meta-data> con DISABLE_CRASH_REPORTING impostato su true nel file AndroidManifest.xml della tua app:
<manifest>
<application>
<meta-data
android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
android:value="true" />
</application>
</manifest>
iOS
Chiama il metodo DisableSDKCrashReporting per disattivare i report sugli arresti anomali su iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Ottenere la versione del plug-in Unity
Per ottenere la versione dell'SDK Unity, esegui questo comando:
// Get the Unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Ottieni la versione della piattaforma
Google Mobile Ads Unity Plugin per Unity dipende dagli SDK della piattaforma Android e iOS. Per ottenere la versione dell'SDK della piattaforma, esegui questo comando:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());