A classe MobileAds oferece configurações globais para .
Gerar eventos de anúncio na linha de execução principal do Unity
gera eventos em uma linha de execução diferente da principal do Unity. Se você implementar eventos de anúncio e interagir com objetos do Unity, você precisa sincronizar os eventos com a linha de execução principal do Unity.
Sincronize os eventos de anúncio com a linha de execução principal do Unity manualmente ou automaticamente, permitindo que faça a sincronização.
Recomendado: sincronizar eventos de anúncio manualmente
Para sincronizar eventos de anúncio manualmente, use o método ExecuteInUpdate na linha de execução principal. Use o método ExecuteInUpdate ao interagir com objetos UnityEngine e enquanto a propriedade RaiseAdEventsOnUnityMainThread estiver desativada.
O exemplo a seguir registra uma linha de execução em segundo plano e executa uma ação para interagir com objetos 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);
}
});
Automatizar a sincronização em eventos de anúncio
Para sincronizar eventos de anúncio, defina a propriedade
MobileAds.RaiseAdEventsOnUnityMainThread como 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;
}
}
Controle de volume do anúncio em vídeo
Se o app tiver controles de volume próprios, como ajustes personalizados de música ou efeitos sonoros, a divulgação do volume do app para permite que os anúncios em vídeo respeitem as configurações de volume do app. Isso garante que os usuários recebam anúncios em vídeo com o volume de áudio esperado.
O volume do dispositivo, controlado por botões de volume ou pelo controle deslizante de volume no nível do SO, determina o volume da saída de áudio do dispositivo. No entanto, os apps podem ajustar os níveis de volume de forma independente em relação ao volume do dispositivo para personalizar a experiência de áudio.
Você pode informar o volume relativo do app chamando
o SetApplicationVolume() método antes de carregar o anúncio. Os valores de volume de anúncio válidos variam de 0.0 (silencioso) a 1.0 (volume atual do dispositivo). Confira um exemplo de como informar o volume relativo do app ao SDK:
// Set app volume to be half of current device volume.
MobileAds.SetApplicationVolume(0.5f);
Para informar ao SDK que o volume do app foi silenciado, chame o método SetApplicationMuted() antes de carregar o anúncio:
// Set app to be muted.
MobileAds.SetApplicationMuted(true);
Por padrão, o volume do app é definido como 1, o volume atual do dispositivo, e o app não é silenciado.
Consentimento para cookies
Se o app tiver requisitos especiais, você poderá definir a chave opcional
ApplicationPreferences gad_has_consent_for_cookies como zero para ativar
anúncios limitados
:
// Enable limited ads
ApplicationPreferences.SetInt("gad_has_consent_for_cookies", 0);
Minificação do Android
Essa opção de publicação do Unity permite ativar a minificação de código Java. Se você ativar a minificação, também precisará criar um arquivo Proguard personalizado para manter as classes referenciadas pelo SDK.
Ativar arquivo Proguard personalizado
Acesse Project Settings > Player > Android > Publishing Settings > Build, e selecione:
- Arquivo Proguard personalizado
Abra
/Assets/Plugins/Android/proguard-user.txte adicione o seguinte:
-keep class com.google.** { public *; }
Desativar relatórios de falhas
coleta relatórios de falhas para fins de depuração e análise. Para desativar os relatórios de falhas, consulte as seções a seguir para Android e iOS.
Android
Adicione a tag <meta-data> com DISABLE_CRASH_REPORTING definida como true no
arquivo AndroidManifest.xml do app:
<manifest>
<application>
<meta-data
android:name="com.google.android.gms.ads.flag.DISABLE_CRASH_REPORTING"
android:value="true" />
</application>
</manifest>
iOS
Chame o método DisableSDKCrashReporting para desativar os relatórios de falhas no iOS:
void Awake() {
MobileAds.DisableSDKCrashReporting();
}
Acessar a versão do plug-in do Unity
Para acessar a versão do SDK do Unity, execute o seguinte:
// Get the Unity SDK version.
Debug.Log("Unity SDK Version: " + MobileAds.GetVersion());
Acessar a versão da plataforma
O para Unity depende dos SDKs da plataforma Android e iOS. Para acessar a versão do SDK da plataforma, execute o seguinte:
// Get the underlying platform SDK version.
Debug.Log("Platform SDK Version: " + MobileAds.GetPlatformVersion());