Configurações avançadas - SDK Vungle para iOS

Índice

  1. A instância do SDK Vungle
  2. Experiências de anúncios personalizadas
  3. Mais protocolos SDK Vungle

Antes de começar...

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

A instância do SDK Vungle

Propriedades da instância

A instância singleton do SDK Vungle tem algumas propriedades disponíveis para personalizar a experiência de anúncios do seu usuário final, ou para receber dados de eventos importantes.  Elas estão listadas abaixo:

muted (BOOL): Controla se os anúncios apresentados vão começar em estado silencioso ou não
delegate (id<VungleSDKDelegate>): Propriedade atribuível conforme o protocolo VungleSDKDelegate, que permite que os aplicativos recebam chamadas de retorno assíncronas para determinados eventos de SDK
assetLoader (id<VungleAssetLoader>): Propriedade atribuível conforme o protocolo VungleAssetLoader, permitindo que os aplicativos sobrescrevam ativos usados no playAd ViewController do VungleSDK principal

 

Métodos de instanciação e constantes de ajuda

(BOOL)isAdPlayable; Retorna YES se houver um anúncio em cache pronto para ser exibido, e se o usuário atual não estiver limitado por visualizações ou tarifas diárias. Essa função não verifica se há um anúncio de transmissão disponível, mesmo se o editor tiver optado por transmitir.
(NSDictionary*)debugInfo; Retorna um NSDictionary com diversas informações de depuração sobre o singleton do VungleSDK.
(void)setLoggingEnabled:(BOOL)enable; Ativa ou desativa a funcionalidade de criação de log padrão, do singleton do VungleSDK.  Os eventos e informações registrados serão exibidos no console.  Para lidar com eventos individuais de criação de log, veja abaixo o método attachLogger.
(void)log:(NSString*)mensagem, ... NS_FORMAT_FUNCTION(1,2); Cria um log com a mensagem especificada para o console e todas as instâncias do VungleSDKLogger anexadas.
(void)attachLogger:(id<VungleSDKLogger>)logger Permite que o aplicativo anexe uma classe conforme o protocolo VungleSDKLogger à instância singleton do VungleSDK. O gerador de logs anexo receberá todos os eventos de logs gerenciados pelo SDK.  Para evitar falha na liberação de memória, é importante desanexar o gerador de logs corretamente, quando ele não mais for necessário.  A instância singleton do VungleSDK vai reter o gerador de logs anexo até que ele seja removido corretamente.
(void)detachLogger:(id<VungleSDKLogger>)logger; Desanexa um objeto gerador de logs.
NSString* VungleSDKVersion Uma constante de string contendo a versão atual do SDK Vungle para iOS.  Inclui as versões principais e secundárias.

Experiência de anúncios personalizada

O método playAd no singleton do VungleSDK pode aceitar um parâmetro NSDictionary, possibilitando que um aplicativo personalize uma experiência de anúncios individual.  Qualquer par de chave/valor válido no parâmetro NSDictionary vai sobrescrever o valor padrão com a configuração indicada. Todas as chaves podem ser adicionadas ao dicionário opcionalmente. As configurações inclusas no parâmetro NSDictionary só afetarão uma chamada de playAd. Você encontrará exemplos de um dicionário de opções na linha 111 ou 131 do aplicativo de demonstração.

Chave Valor/tipo padrão Descrição
VunglePlayAdOptionKeyIncentivized NO
NSNumber representa um valor booliano.
Marcar uma reprodução de anúncio como incentivized causará um comportamento levemente diferente de uma chamada de playAd padrão, a partir dos servidores de anúncio do Vungle e do SDK local. Este recurso pode ser usado para separar comportamento e funcionalidade entre anúncios de colocação com gratificação e anúncios de ocorrência normal.  Para obter um tutorial detalhado sobre as diferenças entre anúncios com incentivo e sem incentivo, confira a nossa documentação aqui.
VunglePlayAdOptionKeyOrientations UIInterfaceOrientationMaskAll
Um NSNumber representa uma máscara de bit com orientações (o padrão é rotação automática).
Define a orientação do anúncio. Recomendamos que você permita que os anúncios girem automaticamente, mesmo se o aplicativo estiver em modo de retrato. Assim, o usuário terá a opção de assistir a vídeos em tela cheia, resultando em uma melhor experiência. Para isso, defina a orientação em um nível de controlador de visualização (em vez de um nível de projeto).
VunglePlayAdOptionKeyUser nil
NSString com o identificador do usuário, que será passada se o anúncio tiver incentivo.
O valor passado como 'usuário' na chamada de servidor a servidor com incentivo.
VunglePlayAdOptionKeyIncentivizedAlertTitleText nil
NSString
String usada como título da caixa de diálogo de alerta, apresentada quando um usuário fecha prematuramente um anúncio com incentivo.
VunglePlayAdOptionKeyIncentivizedAlertBodyText Deseja mesmo pular este anúncio? Se pular, pode perder uma recompensa
NSString
String usada como texto da caixa de diálogo de alerta, apresentada quando um usuário fecha prematuramente um anúncio com incentivo.
VunglePlayAdOptionKeyIncentivizedAlertCloseButtonText Close
NSString
String de título para o texto do botão de fechar da caixa de diálogo de alerta, apresentada quando um usuário fecha prematuramente um anúncio com incentivo.
VunglePlayAdOptionKeyIncentivizedAlertContinueButtonText Continue
NSString
String de título para o texto do botão de fechar da caixa de diálogo de alerta, apresentada quando um usuário fecha prematuramente um anúncio com incentivo.
VunglePlayAdOptionKeyExtraInfoDictionary nil
NSDictionary contendo chaves extra (definidas abaixo).
Dicionário de metadados básico que pode ser usado para monitorar métricas como grupo etário, gênero etc.
VunglePlayAdOptionKeyExtra1..8 nil
NSString representando cada métrica do usuário monitorada.
EM BREVE - Recurso ainda não concluído, mas que permitirá usar as 8 chaves aqui contidas para monitorar e gerar relatórios sobre informações adicionais sobre colocação de anúncios, dados do usuário etc.

Protocolos

Protocolo VungleSDKDelegate


@protocol VungleSDKDelegate 
- (void)vungleSDKAdPlayableChanged:(BOOL)isAdPlayable;
- (void)vungleSDKwillShowAd;
- (void)vungleSDKwillCloseAdWithViewInfo:(NSDictionary*)viewInfo willPresentProductSheet:(BOOL)willPresentProductSheet;
- (void)vungleSDKwillCloseProductSheet:(id)productSheet;
@end    

Métodos VungleSDKDelegate

Você pode implementar o VungleSDK Delegate, que alerta sobre alguns eventos úteis da experiência de anúncios.

Método Descrição
(void)vungleSDKAdPlayableChanged:(BOOL)isAdPlayable Chamado quando o VungleSDK tiver alterado o status de disponibilidade do anúncio.  O booliano isAdPlayable indica a nova reprodutibilidade do SDK Vungle
(void)vungleSDKwillShowAd Chamado quando o VungleSDK está prestes a reproduzir um anúncio de vídeo.  A função de sobrescrever deste método é ideal para pausar jogos, efeitos sonoros, animações etc.
(void)vungleSDKwillCloseAdWithViewInfo:
(NSDictionary *)viewInfo willPresentProductSheet:(BOOL)willPresentProductSheet

O usuário pode sair da visualização do anúncio de três maneiras:

  • assistindo todo vídeo (quando ele é apresentado e fecha automaticamente
  • clicando no botão fechar durante ou ao final de um anúncio
  • clicando no botão de download, que abre a loja de aplicativos do iOS (usando o framework StoreKit)

Em todos os casos, esta chamada de retorno será acionada, porque o ViewController principal do Vungle será desativado. O viewInfo NSDictionary contém estas informações:

  • completedView: NSNumber em BOOL, YES se assistiu pelo menos 80% do vídeo
  • playTime: NSNumber da duração assistida do vídeo
  • didDownload: NSNumber em BOOL, YES se o usuário clicou em Download
  • videoLength: (obsoleto no SDK Vungle para iOS 4.0.9)

O parâmetro willPresentProductSheet sempre é NO. Não use esse parâmetro para determinar se o usuário clicou em download.

(void)vungleSDKwillCloseProductSheet:(id)productSheet (obsoleto) (Obsoleto no SDK Vungle para iOS 4.0.9.) Esta chamada de retorno final será ativada caso um usuário opte por baixar o aplicativo anunciado, e feche a loja de aplicativos dentro do aplicativo. Esse evento permite retomar animações, efeitos sonoros etc., ao retornar ao aplicativo.

 

Registro do VungleSDKDelegate

Para receber eventos singleton do VungleSDK, as classes que seguem o protocolo VungleSDKDelegate deverão ser registradas da seguinte forma:

[[VungleSDK sharedSDK] setDelegate:sua InstânciaDelegada];

Para evitar não liberação de memória, lembre-se de limpar a delegada registrada quando não mais for necessária. O singleton do VungleSDK vai reter a delegada registrada até que seja removida explicitamente.

Para limpar uma delegada, use o seguinte:

[[VungleSDK sharedSDK] setDelegate:nil];

 

Protocolo VungleSDKLogger


@protocol VungleSDKLogger 
- (void)vungleSDKLog:(NSString*)mensagem;
@end

O singleton do VungleSDK enviará eventos de criação de log para qualquer classe anexa, seguindo o protocolo VungleSDKLogger.  O evento de log conterá o valor de NSString, que também será exibido no console (se a criação de logs estiver ativada).  Para anexar o seu gerador de logs, use:

 [sdk attachLogger:suaInstânciaDeLog];

Como mencionado acima, é importante limpar os geradores de logs anexos do VungleSDK. Os geradores de logs podem ser desanexados com:

[sdk detachLogger:suaInstânciaDeLog];

 

Protocolo assetLoader


@protocol VungleAssetLoader
/**
 * deverá retornar um NSData válido, contendo os dados (brutos) de uma imagem para o caminho especificado ou nil. */
- (NSData*)vungleLoadAsset:(NSString*)caminho;

/**
 * deverá retornar um UIImage válido para o caminho especificado ou nil.
 */
- (UIImage*)vungleLoadImage:(NSString*)caminho;
@end
Tem mais dúvidas? Envie uma solicitação

Comentários