Estilos nativos

Configurações de estilo nativo permitirá que o Google Ad Manager processe a renderização dos seus anúncios nativos com base no estilos que você especificar no produto. Primeiro, especifique o tamanho e a segmentação. Em seguida, adicione HTML, CSS e JavaScript para definir anúncios responsivos e produzir uma exibição de qualidade em todas as telas. Não é necessário fazer a renderização, O Ad Manager aplica automaticamente o estilo nativo correto para o destino. Eles são implementados assim como os anúncios de banner, usando um GAMBannerView. Eles podem ser usados com um anúncio fixo tamanho determinado com antecedência ou um tamanho de anúncio flexível determinado no tempo de execução.

Pré-requisitos

  • SDK dos anúncios para dispositivos móveis do Google versão 7.14.0 ou mais recente

Este guia requer algum conhecimento prático do SDK dos anúncios para dispositivos móveis do Google. Se ainda não tiver feito isso, confira nossa Primeiros passos.

Tamanho fixo

Os estilos nativos com tamanho fixo permitem controlar a largura e a altura do anúncio nativo. Para definir um tamanho fixo, siga estas etapas:

  1. Crie um item de linha na interface do Ad Manager e selecione uma das tamanhos predefinidos na lista suspensa do campo Size.

  2. No Interface Builder, defina a largura e a altura do GAMBannerView para corresponder ao tamanho predefinido selecionado na etapa 1. Você verá um de tamanhos e as constantes GADAdSize correspondentes no campo Banner tamanho nesta seção.

Para implementar estilos nativos com um tamanho fixo, basta seguir as etapas abaixo: as instruções em Seu primeiro banner solicitação, mas você ganha flexibilidade e controle sobre HTML, CSS e JavaScript para dar ao anúncio de banner uma aparência nativa e natural no seu app.

Tamanho flexível

Em alguns casos, um tamanho fixo pode não fazer sentido. Por exemplo, é possível Você quer que a largura do anúncio corresponda ao conteúdo do seu app, mas precisa da altura dele. para se ajustar dinamicamente ao conteúdo do anúncio. Para lidar com esse caso, é possível especificar Fluid como o tamanho do anúncio na interface do Ad Manager, que designa que o tamanho do anúncio é determinado no tempo de execução no aplicativo. O SDK fornece uma constante GADAdSize especial, kGADAdSizeFluid, de lidar com esse caso. A altura do tamanho flexível do anúncio é determinada dinamicamente com base na largura definida pelo editor, permitindo GAMBannerView, para ajustar sua altura a fim de que ela corresponda à do criativo.

Solicitação fluida

Diferentemente de outros formatos de anúncio, o tamanho kGADAdSizeFluid não tem uma largura predefinida. Portanto, certifique-se de definir explicitamente o frame do banner largura de banda do seu código ou no Interface Builder. Se uma largura não for especificada, o SDK, por padrão, define a altura do banner com base no tamanho largura do dispositivo.

Se você fizer uma solicitação para vários tamanhos que inclua kGADAdSizeFluid, o anúncio retornado seja sempre colocado dentro de um contêiner fluido e se comportar como um anúncio fluido. Caso um criativo não fluido seja retornado nesse contêiner fluido, o SDK centraliza o anúncio na contêiner para que você não precise modificar a restrição de largura sempre que um novo anúncio for retornado.

A implementação para criar um tamanho único e um fluido para vários tamanhos é muito semelhante. a única diferença é que um modelo com vários solicitação, defina a propriedade validAdSizes para especificar tamanhos válidos para a solicitação de anúncio:

Swift

bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
                           NSValueFromGADAdSize(kGADAdSizeBanner)]

Objective-C

_bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
                              NSValueFromGADAdSize(kGADAdSizeBanner) ];

Confira como fica a implementação completa no código:

Swift

var bannerView: GAMBannerView!

override func viewDidLoad() {
  super.viewDidLoad()
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  bannerView = GAMBannerView(adSize: kGADAdSizeFluid)
  var frameRect = bannerView.frame
  frameRect.size.width = view.bounds.width
  bannerView.frame = frameRect

  // Uncomment this code for a multisize fluid request.
  // bannerView.validAdSizes = [NSValueFromGADAdSize(kGADAdSizeFluid),
  //                            NSValueFromGADAdSize(kGADAdSizeBanner)]

  bannerView.adUnitID = "YOUR_AD_UNIT_ID"
  bannerView.rootViewController = self

  // Make the ad request.
  bannerView.load(GAMRequest())
}

Objective-C

GAMBannerView *_bannerView;

- (void)viewDidLoad {
  [super viewDidLoad];
  // Create the GAMBannerView and set its width to a width that makes sense for your
  // app. In this example, the width is set to the width of the UIViewController's
  // root view.
  _bannerView = [[GAMBannerView alloc] initWithAdSize:kGADAdSizeFluid];
  CGRect frameRect = _bannerView.frame;
  frameRect.size.width = CGRectGetWidth(self.view.bounds);
  _bannerView.frame = frameRect;

  // Uncomment this code for a multisize fluid request.
  // _bannerView.validAdSizes = @[ NSValueFromGADAdSize(kGADAdSizeFluid),
  //                               NSValueFromGADAdSize(kGADAdSizeBanner) ];

  _bannerView.adUnitID = @"YOUR_AD_UNIT_ID";
  _bannerView.rootViewController = self;

  // Make the ad request.
  [_bannerView loadRequest:[GAMRequest request]];
}

Para ver um exemplo de implementação do tamanho de anúncio flexível do Ad Manager, faça o download do aplicativo de demonstração da API para iOS em Swift ou Objective-C.

Fazer o download da demonstração da API

Protocolo GADAdSizeDelegate

É recomendável saber a altura de um banner antes que o tamanho do anúncio mude. O callback adView:willChangeAdSizeTo: notifica o delegado antes a visualização do banner muda para o novo GADAdSize. Para receber uma notificação antes de a visualização do banner mudar para o novo tamanho do anúncio, sua classe deverá estar em conformidade com usando o protocolo GADAdSizeDelegate.

Confira um exemplo de implementação do adView:willChangeAdSizeTo: que mostra como conseguir a largura e a altura novas do banner:

Swift

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
bannerView.adSizeDelegate = self

// MARK: - GADAdSizeDelegate

func adView(_ bannerView: GADBannerView, willChangeAdSizeTo adSize: GADAdSize) {
  let height = adSize.size.height
  let width = adSize.size.width
}

Objective-C

// To be notified before the banner's ad size changes, your view controller class must
// conform to the GADAdSizeDelegate protocol.
_bannerView.adSizeDelegate = self;

#pragma mark - GADAdSizeDelegate

- (void)adView:(GADBannerView *)bannerView willChangeAdSizeTo:(GADAdSize)adSize {
  CGFloat height = adSize.size.height;
  CGFloat width = adSize.size.width;
}