Introdução ao Vungle - Adobe Air

Instruções sobre a extensão do Adobe Air

Antes de começar:

  • A extensão Vungle exige o Adobe AIR SDK 4.0 ou superior. Para obter instruções sobre como atualizar o AIR SDK no Flash Builder ou Flash Professional, consulte "Como posso atualizar o AIR SDK?" no final deste guia.

  • Se estiver trabalhando com Android, a extensão Vungle AIR exige a instalação do JDK 7 no sistema de desenvolvimento.

  • Você pode ver a Documentação da classe ActionScript 3.

  • Consulte "example/VungleExample.as" para ver uma classe de aplicativo de exemplo. (Se você for usuário do Flash Professional e não tiver certeza de como usar uma Classe de documentos, consulte "Como posso usar a Classe de documentos VungleExample no Flash CS6?" no final deste guia.)

1. Incluir a Biblioteca de extensão

Comece criando um novo AIR para projetos de dispositivos móveis e adicionando a extensão nativa.

Se selecionar Android: também pode ser preciso adicionar o Google Play Services e/ou a biblioteca Android Support v4 ao seu projeto. Muitas outras extensões já incluem essas bibliotecas, então, talvez, você não precise adicioná-las. Para adicionar as extensões, repita as etapas abaixo, mas use com.vungle.extensions.android.GooglePlayServices.ane e/ou com.vungle.extensions.android.AndroidSupportLib.ane no lugar de com.vungle.extensions.Vungle.ane.

No Flash Professional CS6 ou superior:

  1. Crie um novo projeto AIR para Android ou AIR para iOS
  2. Escolha Arquivo > Configurações de publicação...
  3. Selecione o ícone de chave inglesa ao lado de "Script" para "Configurações do ActionScript"
  4. Selecione a guia Caminho da biblioteca
  5. Clique em "Navegar para o arquivo de extensão nativa (ANE)" e selecione o arquivo com.vungle.extensions.Vungle.ane. Pressione OK
  6. Selecione o ícone de chave inglesa ao lado de "Destino" para Configurações de player
  7. Se escolher Android: selecione a guia "Permissões" e ative "INTERNET", "WRITE_EXTERNAL_STORAGE" e "ACCESS_NETWORK_STATE"
  8. Marque a caixa "Gerenciar permissões e adições de manifesto manualmente para este aplicativo"
  9. Pressione OK

No Flash Builder 4.6 ou superior:

  1. Vá para Propriedades do projeto
  2. Selecione Extensões nativas em Caminho de versão do Actionscript
  3. Escolha Adicionar ANE... e navegue para o arquivo com.vungle.extensions.Vungle.ane
  4. Select Pacote de versão do Actionscript > Google Android
  5. Selecione a guia Extensões nativas e clique na caixa de seleção "Pacote" ao lado da extensão
  6. Se escolher o iOS, repita as etapas 4 e 5 para o destino "Apple iOS"

2. Atualizar o descritor do aplicativo

Para que o Vungle funcione, é preciso fazer alterações no arquivo XML do aplicativo para o seu aplicativo. Modifique o arquivo XML criado pelo seu IDE com as seguintes alterações (se você for usuário do Flash Professional, lembre-se de seguir as etapas acima para "Incluir a biblioteca no Flash Professional CS6 ou superior". Caso contrário, o Flash pode desfazer suas alterações à medida que você as faz):

  1. Defina o AIR SDK como 4.0 (ou superior) no arquivo do descritor do aplicativo:

    <application xmlns="http://ns.adobe.com/air/application/4.0">
  2. Inclua um link para a extensão no descritor:

    <extensions>
    <extensionID>com.vungle.extensions.Vungle</extensionID>
    </extensions>
  3. Se selecionar Android: também pode ser preciso incluir o Google Play Services e/ou as extensões da biblioteca Android Support. Adicione seus IDs de extensão aqui também.

    <extensions>
    <extensionID>com.vungle.extensions.Vungle</extensionID>
    <extensionID>com.vungle.extensions.android.GooglePlayServices</extensionID>
    <extensionID>com.vungle.extensions.android.AndroidSupportLib</extensionID>
    </extensions>

Para aplicativos AIR compatíveis com Android

Se selecionar Android, atualize suas Adições de manifesto Android no elemento XML android, para incluir as permissões INTERNET, WRITE_EXTERNAL_STORAGE e ACCESS_NETWORK_STATE; adicione a definição de atividade FullScreenAdActivity, adicione o serviço VungleService e tag de metadados da versão google-play-services:

<android> 
<manifestAdditions><![CDATA[ 
<manifest android:installLocation="auto"> 

  <uses-permission android:name="android.permission.INTERNET"/> 
<
uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <application> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <activity android:name="com.vungle.publisher.FullScreenAdActivity" android:configChanges="keyboardHidden|orientation|screenSize" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" /> <service android:name="com.vungle.publisher.VungleService" android:exported="false" /> </application> </manifest> ]]></manifestAdditions> </android>

3. Integrar a API Vungle

A API Vungle pode ser adicionada ao seu aplicativo em apenas algumas linhas do ActionScript.

Inicializar a extensão Vungle

Inicialize a API quando o aplicativo for iniciado. (Se usar somente o ActionScript, faça isso no construtor da Classe de documentos. Se usar o Flex, chame isso no evento initialize() da classe principal. Se usar código de linha do tempo no Flash, faça isso no Quadro 1.)

  1. Importar as classes de API:

    import com.vungle.extensions.*; 
    import com.vungle.extensions.events.*;
  2. Inicialize a API chamando Vungle.create(), e passando uma matriz que contenha seu ID de aplicativo do Painel de controle Vungle. Se você escolher iOS e Android no mesmo projeto, inclua os dois IDs na matriz, sendo o ID do iOS primeiro e o ID do Android depois.

    Você deve enviar a chamada para Vungle.create() em uma try/catch, pois o Vungle pode lançar um erro durante o processo de criação (por exemplo, a extensão lança um erro se executada no Desktop):

    try
    { 
      // inicializar com o ID de aplicativo 
      Vungle.create(["your_vungle_id"]); 
    
      // -OU- inicializar incluindo IDs do iOS e Android para aplicativos multiplataformas 
      // Vungle.create(["your_ios_vungle_id","your_android_vungle_id"]); 
    } catch (error:Error) {
      // não foi possível criar extensão. Você está executando em algo que não seja iOS/Android?
    }

Exibir um anúncio intersticial

Para exibir um anúncio intersticial, chame playAd(). É recomendável verificar se um anúncio está disponível usando o método isAdAvailable():

if (Vungle.vungle.isAdAvailable())
{
    Vungle.vungle.playAd();
}

Exibir um anúncio com incentivo

Para exibir um anúncio com incentivo, chame displayIncentivizedAd(). É recomendável verificar se um anúncio está disponível usando o método isAdAvailable(). A função leva dois parâmetros Opcionais: se exibir o botão Fechar no anúncio, e uma string opcional identificável pelo usuário (que pode ser usada com webhooks do lado do servidor Vungle, para ativar um HTTP GET sempre que um usuário concluir uma visualização):

if (Vungle.vungle.isAdAvailable())
{
    var config:VungleAdConfig = new VungleAdConfig();
    config.incentivized = true;
    Vungle.vungle.playAd(config);
}

Para recompensar o expectador por completar uma visualização com incentivo, é recomendável implementar o ouvinte de evento AD_VIEWED como descrito abaixo.

Adicionar ouvintes de evento

A extensão Vungle despacha cinco eventos: VungleEvent.AD_PLAYABLE, VungleEvent.AD_STARTED, VungleEvent.AD_FINISHED, VungleEvent.AD_VIEWED e VungleEvent.AD_LOG.

  1. O AD_PLAYABLE é despachado quando um anúncio está pronto para ser reproduzido 
    Vungle.vungle.addEventListener(VungleEvent.AD_PLAYABLE, onAdPlayable);
    
    function onAdPlayable(e:VungleEvent):void
    {
        trace("ad playable");
    }
    
  2. Os eventos AD_STARTED e AD_FINISHED são despachados quando um anúncio é exibido e desativado, respectivamente:

    Vungle.vungle.addEventListener(VungleEvent.AD_STARTED, onAdStarted); 
    Vungle.vungle.addEventListener(VungleEvent.AD_FINISHED, onAdFinished); 
    
    function onAdStarted(e:VungleEvent):void 
    { 
      trace("ad displayed"); 
    } 
    
    function onAdFinished(e:VungleEvent):void
    { 
      trace("ad dismissed: " + e.wasCallToActionClicked);
    }
  3. O evento AD_VIEWED é ativado quando o usuário não está mais em um anúncio Vungle e assistiu uma parte do vídeo. A propriedade "watched" é a duração, em segundos, de um vídeo que o usuário assistiu. A propriedade "length" é a duração total do vídeo.

    (Este evento pode não ser chamado em alguns casos, como quando há um ativo HTML pre-roll na publicidade e o usuário cancela a opção do anúncio antes de assistir ao vídeo.)

    Para anúncios com incentivo, o Vungle considera uma visualização onde mais de 80% do vídeo foi visto como uma visualização completa:

    Vungle.vungle.addEventListener(VungleEvent.AD_VIEWED, onAdViewed); 
    
    function onAdStarted(e:VungleEvent):void 
    { 
      trace("watched"+e.watched+" of "+e.length+" second video."); 
      var percentComplete:Number=e.watched/e.length; 
      if(percentComplete>0.80) 
      { 
        trace("counts a completed view- present reward."); 
      } 
    }
  4. O AD_LOG é despachado quando uma mensagem de log é enviada pelo Vungle SDK. Você pode usá-la para depuração. O log é implementado somente no Vungle SDK para iOS, de modo que este evento é específico por plataforma.

    
    Vungle.vungle.setLoggingEnabled(true);
    Vungle.vungle.addEventListener(VungleEvent.AD_LOG, onAdLog);
    
    private function onAdLog(e:VungleEvent):void
    {
        log("ad log: " + e.message);
    }
    

Alternar rotação automática

Você pode usar o método setAutoRotationEnabled() para alternar se os vídeos giram automaticamente de acordo com a orientação do dispositivo do usuário:

Vungle.vungle.setAutoRotation(true);

Mais opções

Como você já viu antes, é possível passar um objeto com as opções de configuração ao chamar o método playAd(). Estas são as propriedades disponíveis em VungleAdConfig:

orientation

Com esta propriedade, você pode especificar a orientação do anúncio. Há diferentes conjuntos de sinalizadores para Android e iOS. Consulte a classeVungleOrientation para obter detalhes. Os sinalizadores podem ser combinados com um operador bit a bit OR:

config.orientation = VungleOrientation.ANDROID_AUTOROTATE | VungleOrientation.IOS_PORTRAIT;

soundEnabled

Você pode usar essa propriedade para definir se os anúncios reproduzem som ou são silenciados.

backButtonImmediatelyEnabled

Essa opção é específica do Android. Se true, permite que o usuário saia imediatamente de um anúncio através do botão de voltar. Se false, o usuário não poderá usar o botão de voltar para sair de um anúncio até que o botão de fechar seja exibido na tela.

immersiveMode

Essa opção é específica do Android. Ativa ou desativa o modo imersivo em dispositivos KitKat+.

incentivized

Define o modo com incentivo. Se true, o usuário receberá uma caixa de diálogo de confirmação quando tentar pular o anúncio.

incentivizedUserId

O ID de usuário exclusivo, que será passado para o seu aplicativo, a fim de verificar se esse usuário deverá ser recompensado por assistir um anúncio com incentivo.

incentivizedCancelDialogTitle, incentivizedCancelDialogBodyText, incentivizedCancelDialogCloseButtonText, incentivizedCancelDialogKeepWatchingButtonText

Essas opções lhe permitem personalizar a caixa de diálogo de confirmação que aparece ao pular um anúncio com incentivo.

extra1 … extra8

Você pode usar isso para monitorar métricas como grupo etário, gênero, etc.

placement

Um nome de colocação de anúncio opcional para melhor geração de relatórios no painel de controle.

largeButtons

Essa opção é específica do iOS. Se definido como true, os botões na tela que são exibidos durante o vídeo ficam maiores.

 

Padrões globais

Você pode usar o objeto de configuração global para definir valores padrão para estas opções:


// definir qualquer opção de configuração que você desejar
VungleAdConfig.globalConfig.orientation = VungleOrientation.ANDROID_MATCH_VIDEO;
VungleAdConfig.globalConfig.soundEnabled = false;

Depois, o novo objeto VungleAdConfig é criado com esses valores definidos por padrão. O playAd() sem opções sempre usa a configuração global.

Métodos absoletos

A partir da versão 2.4.0, os seguintes métodos ficaram obsoletos:


Vungle.vungle.displayAd(showCloseButton:Boolean, orientationHint:int):void;
Vungle.vungle.displayIncentivizedAd(name:String, showCloseButton:Boolean, orientationHint:int):void;
Vungle.vungle.setSoundEnabled(enabled:Boolean):void;
Vungle.vungle.setBackButtonEnabled(backEnabled:Boolean):void;
Vungle.vungle.setIncentivizedBackButtonEnabled(backEnabled:Boolean):void;

Esses métodos foram mantidos para manter a compatibilidade com versões anteriores. Não é recomendável usá-los em novos aplicativos ou misturá-los com a chamada do método playAd().

Solução de problemas e Perguntas frequentes

“Como eu posso usar a Classe de documentos VungleExample.as no Flash Professional CS6?”

  1. Primeiro, crie o aplicativo e adicione a extensão seguindo este guia, das Seções 1 a 3.

  2. Copie e cole VungleExample.as na mesma pasta que o seu .fla. Não copie e cole o conteúdo na linha do tempo. Isso não funciona.

  3. Altere os IDs do aplicativo na linha 51 para serem os seus próprios IDs de aplicativo Vungle.

  4. Nas propriedades do Flash, em "Classe de documentos", digite "VungleExample" (sem aspas) e pressione OK.

  5. Crie e instale o aplicativo.

"Como eu posso instalar uma versão mais recente do AIR SDK (4.0 ou superior) no Flash Professional CS6?"

Siga este link para encontrar o AIR SDK mais recente. Se você já instalou o AIR 4.0 ou superior, pode pular essa etapa. Caso contrário, siga as instruções abaixo:

  1. Descompacte o pacote AIR 4.0 SDK, ou posterior, em um local do seu disco rígido.

  2. Abra o Flash Professional CS6.

  3. Selecione Ajuda > Gerenciar AIR SDK...

  4. Pressione o botão Mais (+) e vá até o local do AIR SDK descompactado

  5. Pressione OK

  6. Selecione Arquivo > Configurações de publicação

  7. Selecione o AIR SDK para iOS mais recente no menu suspenso "Destino"

"Como eu posso instalar uma versão mais recente do AIR SDK (4.0 ou superior) no Flash Builder?"

Siga este link para encontrar o AIR SDK mais recente. Se você já instalou o AIR 4.0 ou superior, pode pular essa etapa. Você também pode usar as instruções mais recentes do Adobe para atualizar os AIR SDKs do Flash Builder.

 

Tem mais dúvidas? Envie uma solicitação

Comentários