Styles natifs

Paramètres des styles natifs permettre à Google Ad Manager de gérer l'affichage de vos annonces natives en fonction que vous spécifiez dans le produit. Spécifiez d'abord la taille et le ciblage. Ajoutez ensuite du code HTML, CSS et JavaScript pour définir des annonces responsives et offrent un affichage de qualité sur tous les écrans. Vous n'avez pas besoin de faire n'importe quel rendu. Ad Manager applique automatiquement le style natif approprié pour la destination. Les styles natifs sont implémentés de la même manière que les bannières, à l'aide d'un GAMBannerView. Elles peuvent être utilisées avec une annonce fixe une taille d'annonce déterminée à l'avance ou une taille d'annonce fluide déterminée au moment de l'exécution.

Prérequis

  • SDK Google Mobile Ads 7.14.0 ou version ultérieure

Ce guide suppose une connaissance pratique du SDK Google Mobile Ads. Si vous ne l'avez pas déjà fait, consultez nos Premiers pas.

Taille fixe

Les styles natifs de taille fixe vous permettent de contrôler la largeur et la hauteur. de l'annonce native. Pour définir une taille fixe, procédez comme suit:

  1. Créez un élément de campagne dans l'interface utilisateur d'Ad Manager, puis sélectionnez l'une des les tailles prédéfinies dans la liste déroulante du champ Size.

  2. Dans Interface Builder, définissez la largeur et la hauteur de GAMBannerView. en fonction de la taille prédéfinie sélectionnée à l'étape 1. Vous pouvez consulter liste des tailles et les constantes GADAdSize correspondantes dans le Banner taille .

Pour implémenter des styles natifs de taille fixe, il vous suffit de suivre suivez les instructions de la section Votre première bannière requête, mais vous pouvez contrôler les langages HTML, CSS et JavaScript pour donner à votre bannière un aspect natif et naturel dans votre application.

Taille "Fluide"

Dans certains cas, une taille fixe peut ne pas être judicieuse. Par exemple, vous pouvez Vous souhaitez que la largeur de l'annonce corresponde au contenu de votre application, mais vous avez besoin de sa hauteur. pour s'adapter dynamiquement au contenu de l'annonce. Pour gérer ce cas, vous pouvez spécifier Fluid comme taille d'annonce dans l'interface utilisateur d'Ad Manager, ce qui indique que la taille de l'annonce est déterminée au moment de l'exécution dans l'application. Le SDK fournit une constante GADAdSize spéciale, kGADAdSizeFluid pour gérer ce cas. La hauteur de la taille d'annonce fluide est déterminée de façon dynamique. basé sur la largeur définie par l'éditeur, ce qui permet GAMBannerView, pour ajuster sa hauteur à celle de la création.

Demande fluide

Contrairement à d'autres formats d'annonces, la taille d'annonce "kGADAdSizeFluid" ne comporte pas d'une largeur prédéfinie. Veillez donc à définir explicitement le cadre de la bannière. dans votre code ou dans Interface Builder. Si aucune largeur n'est spécifiée, le SDK définit par défaut la hauteur de la bannière en fonction de l'intégralité la largeur de l’appareil.

Si vous effectuez une demande multitaille qui inclut kGADAdSizeFluid, l'annonce renvoyée est toujours placée dans un conteneur fluide et se comportent comme une annonce fluide. Si une création fluide est renvoyé dans ce conteneur fluide, le SDK centre l'annonce dans de sorte que vous n'ayez pas à modifier la contrainte de largeur chaque fois qu'une nouvelle annonce est renvoyée.

L'implémentation pour la création d'un fluide à taille unique et d'un fluide à tailles multiples est très similaire. La seule différence réside dans le cas vous devez définir la propriété validAdSizes pour spécifier l'annonce valides pour la demande d'annonce:

Swift

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

Objective-C

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

L'implémentation complète se présente comme suit dans le code:

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]];
}

Pour voir un exemple d'implémentation de la taille d'annonce "Fluide" dans Ad Manager, téléchargez l'application de démonstration de l'API iOS en Swift ou en Objective-C.

Télécharger la démonstration de l'API

Protocole GADAdSizeDelegate

Vous souhaitez peut-être connaître la hauteur d'une bannière avant de modifier la taille de son annonce. Le rappel adView:willChangeAdSizeTo: informe son délégué avant le la bannière passe au nouveau GADAdSize. Pour recevoir une notification avant le l'affichage de la bannière passe à la nouvelle taille d'annonce, votre classe doit respecter le protocole GADAdSizeDelegate.

Voici un exemple d'implémentation de adView:willChangeAdSizeTo: qui indique comment obtenir la nouvelle largeur et la nouvelle hauteur de la bannière:

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;
}