Anúncios nativos

Os anúncios nativos são recursos apresentados aos usuários por meio de componentes da interface que são nativos da plataforma. Elas são mostradas usando as mesmas classes que você já usa nos storyboards e podem ser formatados para combinar com o design visual do seu aplicativo.

Quando um anúncio nativo é carregado, seu app recebe um objeto de anúncio com os recursos dele. e o app (em vez do SDK dos anúncios para dispositivos móveis do Google) é responsável por exibi-los.

A implementação de anúncios nativos tem duas partes: Carregar um anúncio usando o SDK e exibir o conteúdo do anúncio no app.

Esta página mostra como usar o SDK para carregar anúncios nativos.

Pré-requisitos

Sempre faça testes com anúncios de teste

Ao criar e testar seus apps, use anúncios de teste em vez de anúncios de produção ativos.

A maneira mais fácil de carregar anúncios de teste é usar o ID do bloco de anúncios de teste dedicado para anúncios nativos no iOS:

/21775744923/example/native

Ele foi configurado especialmente para retornar anúncios de teste para cada solicitação, e você pode usá-lo nos seus próprios apps durante a programação, o teste e a depuração. Basta substituí-lo pelo seu ID de bloco de anúncios antes de publicar o app.

Para mais informações sobre como funcionam os anúncios de teste do SDK dos anúncios para dispositivos móveis do Google, consulte Anúncios de teste.

Carregar anúncios

Os anúncios nativos são carregados com a classe GADAdLoader, que envia mensagens aos delegados de acordo com o protocolo GADAdLoaderDelegate.

Além do formato nativo definido pelo sistema, você também pode criar seus próprios formatos de anúncios nativos personalizados, que podem ser usados para anúncios nativos de venda direta. Com os formatos de anúncios nativos personalizados, transmitir dados estruturados arbitrários para seu app. Esses anúncios são representados pelo GADCustomNativeAd.

Inicializar o carregador de anúncios

Antes de carregar um anúncio, é necessário inicializar o carregador de anúncios. O código abaixo demonstra como inicializar um GADAdLoader:

Swift

adLoader = GADAdLoader(adUnitID: "/21775744923/example/native",
    // The UIViewController parameter is optional.
    rootViewController: rootViewController,
    adTypes: [ .native ],
    options: [ ... ad loader options objects ... ])
adLoader.delegate = self

Objective-C

self.adLoader = [[GADAdLoader alloc]
      initWithAdUnitID:@"/21775744923/example/native"
    // The UIViewController parameter is nullable.
    rootViewController:rootViewController
               adTypes:@[ GADAdLoaderAdTypeNative ]
               options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;

Você precisa de um ID de bloco de anúncios (use o ID de teste), constantes para passar o adTypes para especificar os formatos nativos que você quer solicitar e as opções que você quer definir no parâmetro options. A lista de possíveis valores do parâmetro options podem ser encontrados na consulta Configuração página de opções.

A matriz adTypes precisa conter uma ou mais das constantes abaixo :

Implementar o delegado do carregador de anúncios

O delegado do carregador de anúncios precisa implementar protocolos específicos para seu tipo de anúncio. Para anúncios nativos, o protocolo GADNativeAdLoaderDelegate inclui uma mensagem enviada ao delegado quando um anúncio nativo é carregado.

Swift

public func adLoader(_ adLoader: GADAdLoader,
            didReceive nativeAd: GADNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd *)nativeAd;

O protocolo GADCustomNativeAdLoaderDelegate inclui uma mensagem que é enviada para o delegado quando um anúncio de modelo personalizado for carregado.

Swift

func adLoader(_ adLoader: GADAdLoader,
  Receive customNativeAd: GADCustomNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;

Solicitar anúncios

Depois que o GADAdLoader for inicializado, chame o método loadRequest: para solicitar um anúncio:

Swift

adLoader.load(GAMRequest())

Objective-C

[self.adLoader loadRequest:[GAMRequest request]];

O loadRequest: em GADAdLoader aceita o mesmo GAMRequest objetos como banners e intersticiais. Você pode usar objetos de solicitação para adicionar informações de segmentação, assim como faria com outros tipos de anúncio.

Determinar quando o carregamento foi concluído

Depois que um app chamar loadRequest:, ele poderá receber os resultados da solicitação usando chamadas para:

A solicitação para um único anúncio resultará em uma chamada para um desses métodos.

Tratamento de solicitações com falha

Os protocolos acima estendem o protocolo GADAdLoaderDelegate, que define uma é enviada quando há falha no carregamento dos anúncios.

Swift

public func adLoader(_ adLoader: GADAdLoader,
    didFailToReceiveAdWithError error: NSError)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didFailToReceiveAdWithError:(NSError *)error;

Receber notificações de eventos de anúncios nativos

Para receber notificações sobre eventos relacionados às interações de anúncios nativos, defina a propriedade do anúncio nativo:

Swift

nativeAd.delegate = self

Objective-C

nativeAd.delegate = self;

Em seguida, implemente GADNativeAdDelegate receber as seguintes chamadas de delegado:

Swift

func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
  // The native ad was shown.
}

func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
  // The native ad was clicked on.
}

func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
  // The native ad will present a full screen view.
}

func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad will dismiss a full screen view.
}

func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad did dismiss a full screen view.
}

func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

Objective-C

- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
  // The native ad was shown.
}

- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  // The native ad was clicked on.
}

- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
  // The native ad will present a full screen view.
}

- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad will dismiss a full screen view.
}

- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad did dismiss a full screen view.
}

- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

Práticas recomendadas

Siga estas regras ao carregar anúncios.

  • Os apps que usam anúncios nativos em uma lista precisam armazenar essa lista previamente em cache.

  • Ao pré-armazenar anúncios, limpe o cache e recarregue após uma hora.

  • Não chamar loadRequest: novamente em uma GADAdLoader até a solicitação anterior termine de carregar, conforme indicado por adLoaderDidFinishLoading:.

Mostrar seu anúncio

Depois de carregar um anúncio, resta apenas exibi-lo aos usuários. Confira nosso guia avançado de nativas para saber como.