Configurações avançadas - Vungle Android SDK

Conteúdo

  1. Configuração global de anúncios
  2. Configuração de um único anúncio
  3. Opções de configuração
  4. Interface do ouvinte de eventos
  5. Proguard

Observação: Este artigo aborda as configurações avançadas do Vungle SDK para Android. Caso você não esteja familiarizado com o nosso SDK para Android, consulte nosso Guia de introdução para Android.

Configuração global de anúncios

Após chamar init, você poderá opcionalmente obter acesso ao objeto AdConfig global. Esse objeto lhe permite definir opções que serão automaticamente aplicadas a todos os anúncios reproduzidos.

import com.vungle.publisher.VunglePub;
import com.vungle.publisher.AdConfig;
import com.vungle.publisher.Orientation;

public class FirstActivity extends android.app.Activity {

  ...

  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);

      ...

      vunglePub.init(this, app_id);

      // obter uma referência ao objeto global AdConfig
      final AdConfig globalAdConfig = vunglePub.getGlobalAdConfig();

      // definir qualquer opção de configuração que você desejar. 
      // Para obter a descrição completa das opções disponíveis, consulte a       
      // seção "Opções de configuração".
      globalAdConfig.setSoundEnabled(true);
      globalAdConfig.setOrientation(Orientation.autoRotate);

  }
}

Configuração de um único anúncio

Se preferir, você pode personalizar um por um cada anúncio reproduzido se fornecer um objeto AdConfig ao playAd. Se você tiver definido opções na configuração global de anúncios (acima), elas serão substituídas pelas opções fornecidas.  Faça o seguinte para transmitir um AdConfig de substituição:

import com.vungle.publisher.VunglePub;
import com.vungle.publisher.AdConfig;

public class GameActivity extends android.app.Activity {
  ...

  private void onLevelComplete() {
      // criar um novo objeto AdConfig
      final AdConfig overrideConfig = new AdConfig();

      // definir qualquer opção de configuração que você desejar. 
      // Para obter a descrição completa das opções disponíveis, consulte a       
      // seção "Opções de configuração".
      overrideConfig.setIncentivized(true);
      overrideConfig.setSoundEnabled(false);

      // o objeto overrideConfig só afetará a reprodução deste anúncio.
      vunglePub.playAd(overrideConfig);
  }
}

Opções de configuração

O objeto AdConfig

A AdConfig de substituição possui diversas opções que podem ser definidas para a reprodução de um único anúncio.  As opções disponíveis são as seguintes:

Método Padrão Descrição
setOrientation Orientation.matchVideo Orientation.autoRotateindica que o anúncio deve girar automaticamente conforme a orientação do dispositivo.Orientation.matchVideoindica que o anúncio será reproduzido na melhor orientação para o vídeo (geralmente, paisagem).
setSoundEnabled true Define o estado inicial do som do anúncio. Se definida como true, o áudio respeitará o volume e as configurações de som do dispositivo. Se definida como false, o vídeo começará mudo, mas o usuário poderá modificar essa opção.
setBackButtonImmediatelyEnabled false Se definida como true, permite que o usuário saia imediatamente do anúncio por meio do botão Voltar. Se definida como false, o usuário não poderá usar o botão Voltar para sair do anúncio enquanto o botão Fechar for exibido na tela.
setImmersiveMode false Ativa ou desativa o modo imersivo em dispositivos KitKat+
setIncentivized false Define o modo com incentivo - defina esta opção como "true" (verdadeiro) se usar callbacks de servidor para servidor nos anúncios com recompensa. Se definida como "true", o usuário abrirá uma caixa de diálogo de confirmação quando tentar pular o anúncio. Se definida como "false", não será exibida nenhuma confirmação. Consulte nossas instruções detalhadas para configurar anúncios com incentivo aqui.
setIncentivizedUserId none Define o ID de usuário exclusivo, que será transmitido a seu aplicativo, para verificar se esse usuário deve ser recompensado por assistir a um anúncio com incentivo. N/D se o anúncio não tiver incentivo.
setIncentivizedCancelDialogTitle "Fechar vídeo?" Define o título da caixa de diálogo de confirmação quando se pula um anúncio com incentivo. N/D se o anúncio não tiver incentivo.
setIncentivizedCancelDialogBodyText "Se fechar este vídeo agora, você não receberá sua recompensa. Deseja continuar?" Define o corpo da caixa de diálogo de confirmação quando se pula um anúncio com incentivo. N/D se o anúncio não tiver incentivo.
setIncentivizedCancelDialogCloseButtonText "Fechar vídeo" Define o texto do botão "Cancelar", na caixa de diálogo de confirmação, quando se pula um anúncio com incentivo. N/D se o anúncio não tiver incentivo.
setIncentivizedCancelDialogKeepWatchingButtonText "Continuar assistindo" Define o texto do botão "Continuar assistindo", na caixa de diálogo de confirmação, quando se pula um anúncio com incentivo. N/D se o anúncio não tiver incentivo.
setExtra1..8 none EM BREVE - Este recurso ainda não está disponível. Quando for disponibilizado, você poderá usá-lo para monitorar métricas como faixa etária, gênero etc.
setPlacement none EM BREVE - Metadados que indicam a colocação da reprodução de um determinado anúncio.  O recurso serve para você filtrar as experiências de diferentes anúncios quando recuperar os dados de desempenho de seu aplicativo nos relatórios
setTransitionAnimationEnabled false Ativa ou desativa a animação padrão de transição de fragmento

Como exibir o botão Fechar

Para determinar se o usuário tem a opção de fechar um anúncio, utilize as opções de visualização forçada das configurações avançadas do seu aplicativo no Painel de controle do Vungle.

A interface do EventListener

O Publisher SDK levanta diversos eventos que podem ser tratados por meio da programação quando você implementa as classes com.vungle.publisher.EventListener e as registra/remove usando:

VunglePub.setEventListeners(eventListener1, eventListener2, ...)

Para evitar vazamento de memória, lembre-se de remover o eventListener quando ele não for mais necessário.

Os métodos disponíveis para manipular o EventListener são os seguintes:

Método Descrição
addEventListeners() Limpa os EventListeners registrados e, em seguida, adiciona os eventListeners de entrada.
clearEventListeners() Limpa os EventListeners
removeEventListeners() Remove os EventListeners de entrada.

Observação sobre threads de IU

Os callbacks são executados em um thread em segundo plano. Portanto, todas as interações/atualizações da IU decorrentes de um callback de evento devem ser transmitidas ao thread de IU principal antes da execução. Há duas formas comuns de executar o código no thread de IU:

import com.vungle.publisher.EventListener;
...

public class FirstActivity extends android.app.Activity {
  ...

  private final EventListener vungleListener = new EventListener(){

@Deprecated
@Override public void onVideoView(boolean isCompletedView, int watchedMillis, int videoDurationMillis) { // Esse método ficou obsoleto e será removido. Não o utilize.
// Use onAdEnd.
} @Override public void onAdStart() { // Chamado antes de reproduzir um anúncio } @Override public void onAdEnd(boolean wasSuccessfulView, boolean wasCallToActionClicked) { // Chamado quando o usuário sai do anúncio e o controle volta para o seu aplicativo // se wasSuccessfulView estiver definida como "true", o usuário assistiu ao anúncio e deve ser recompensado // (caso se trate de um anúncio com recompensa).
// se wasCallToActionClicked estiver definida como "true", o usuário clicou no botão de chamada para ação
           // do anúncio.
    }

    @Override
    public void onAdPlayableChanged(boolean isAdPlayable) {
        // Chamado quando o estado de reprodutibilidade muda. Se isAdPlayable for "true", agora você poderá        
        // reproduzir o anúncio.
        // Se definida como "false", você ainda não poderá reproduzir o anúncio.
    }

    @Override
    public void onAdUnavailable(String reason) {
        // Chamado quando VunglePub.playAd() é chamado, mas não há anúncios disponíveis para reprodução
    }

  };

  @Override
  public void onCreate(Bundle savedInstanceState) {
      ...

      vunglePub.init(this, app_id);
      vunglePub.setEventListeners(vungleListener);

  };

@Override public void onDestroy() { ... vunglePub.clearEventListeners(); };
}

Proguard

Se usar o Proguard, verifique se as linhas a seguir estão presentes em seu arquivo de configuração do Proguard:

-dontwarn com.vungle.**
-keep class com.vungle.** { *; } // omitted public
-keep class javax.inject.*
Tem mais dúvidas? Envie uma solicitação

Comentários