Native Designs

Einstellungen für native Designs Ermöglichen Sie Google Ad Manager, das Rendern nativer Anzeigen basierend auf nativen Anzeigen auszuführen. die Sie innerhalb des Produkts angeben. Legen Sie zunächst die Größe und das Targeting fest. Dann fügen Sie HTML, CSS und JavaScript hinzu, um responsive Anzeigen zu definieren und eine hochwertige Darstellung auf allen Bildschirmen zu ermöglichen. Sie müssen nichts des Renderings; In Ad Manager wird automatisch das richtige native Design für das Ziel. Native Designs werden wie Banneranzeigen implementiert, mit GAMBannerView. Sie können mit einer festen Anzeige verwendet werden im Voraus festgelegte Größe oder eine flexible Anzeigengröße, die während der Laufzeit festgelegt wird.

Vorbereitung

  • Google Mobile Ads SDK: Version 7.14.0 oder höher

In diesem Leitfaden werden Grundkenntnisse des Google Mobile Ads SDK vorausgesetzt. Falls Sie dies noch nicht getan haben, sollten Sie sich unsere Startleitfaden.

Feste Größe

Bei nativen Designs mit fester Größe können Sie Breite und Höhe festlegen der nativen Anzeige. So legen Sie eine feste Größe fest:

  1. Erstellen Sie auf der Ad Manager-Benutzeroberfläche eine Werbebuchung und wählen Sie eine der vordefinierte Größen aus dem Drop-down-Menü Size.

  2. Legen Sie im Interface Builder die Breite und Höhe von GAMBannerView fest. damit er der in Schritt 1 ausgewählten Größe entspricht. Sie können eine Liste mit Größen und den zugehörigen GADAdSize-Konstanten im Banner Größe .

Die Implementierung nativer Designs mit einer festen Größe ist ganz einfach: der Anleitung unter Mein erstes Banner Anfrage aber Sie erhalten die Flexibilität und Kontrolle über HTML, CSS und JavaScript, , um Ihrer Banneranzeigen ein natives Design zu verleihen, das sich natürlich in Ihrer App gestaltet.

Flexible Größe

In einigen Fällen ist eine feste Größe nicht sinnvoll. Zum Beispiel können Sie Die Breite der Anzeige soll dem Inhalt Ihrer App entsprechen, aber ihre Höhe muss angegeben werden. um sich dynamisch an den Anzeigeninhalt anzupassen. In diesem Fall können Sie auf der Ad Manager-Benutzeroberfläche Fluid als Anzeigengröße angeben, bedeutet, dass die Größe der Anzeige zur Laufzeit in der App bestimmt wird. Das SDK bietet eine spezielle GADAdSize-Konstante, kGADAdSizeFluid, um diesen Fall zu bearbeiten. Die Höhe der flexiblen Anzeigengröße wird dynamisch bestimmt. basierend auf der vom Publisher definierten Breite, GAMBannerView, um seine Höhe an die des Creatives anzupassen.

Flüssigkeitsanforderung

Im Gegensatz zu anderen Anzeigenformaten weist die Anzeigengröße kGADAdSizeFluid eine vordefinierte Breite haben. Achten Sie daher darauf, den Frame des Banners explizit festzulegen, im Code oder im Interface Builder angeben. Wenn keine Breite angegeben ist, legt das SDK die Höhe des Banners standardmäßig auf Basis des vollständigen Breite des Geräts.

Wenn Sie eine Anfrage für unterschiedliche Größen stellen, die kGADAdSizeFluid enthält, wird die zurückgegebene Anzeige immer in einem flexiblen Container platziert und sich wie eine flexible Anzeige verhalten. Falls ein nicht flexibles Creative zurückgegeben wird, zentriert das SDK die Anzeige im Container, sodass Sie die Breitenbeschränkung nicht ändern müssen, wenn eine neue Anzeige zurückgegeben wird.

Die Implementierung zum Erstellen einer einzigen Größe und einer flexiblen Größe mit mehreren Größen ist sehr ähnlich. ist der einzige Unterschied bei Anfrage verwenden, legen Sie die Eigenschaft validAdSizes fest, um die Anzeige anzugeben. Größen, die für die Anzeigenanfrage gültig sind:

Swift

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

Objective-C

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

So sieht die vollständige Implementierung im Code aus:

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

Ein Beispiel für die Implementierung der Anzeigengröße "Flexibel" von Ad Manager Laden Sie die iOS API Demo App in Swift oder Objective-C herunter.

API-Demo herunterladen

GADAdSizeDelegate-Protokoll

Sie können die Höhe eines Banners kennen, bevor sich seine Anzeigengröße ändert. Der adView:willChangeAdSizeTo:-Callback benachrichtigt seinen Bevollmächtigten vor wird die Banneransicht in die neue GADAdSize geändert. Benachrichtigung vor dem die Banneransicht auf die neue Anzeigengröße ändert, muss Ihre Klasse den das GADAdSizeDelegate-Protokoll.

Hier siehst du eine Beispielimplementierung von adView:willChangeAdSizeTo: -Callback, der zeigt, wie die neue Breite und Höhe des Banners abgerufen werden können:

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