Jetzt starten

Dieser Leitfaden richtet sich an Publisher, die eine iOS-App mit AdMob monetarisieren und Firebase verwenden möchten. Wenn Sie Firebase in Ihre App aufnehmen möchten (oder dies in Betracht ziehen möchten), lesen Sie stattdessen die Anleitung zu AdMob mit Firebase.

Das Einbinden des Google Mobile Ads SDK in eine App ist der erste Schritt zum Anzeigen und Generieren von Umsatz. Sobald du das SDK integriert hast, kannst du mit der Implementierung eines oder mehrerer der unterstützten Anzeigenformate fortfahren.

Vorbereitung

  • Xcode 13.2.1 oder höher verwenden
  • Ausrichtung auf iOS 10.0 oder höher

Mobile Ads SDK importieren

CocoaPods (bevorzugt)

Am einfachsten lässt sich das SDK mit CocoaPods in ein iOS-Projekt importieren. Öffne die Podfile deines Projekts und füge diese Zeile dem Ziel deiner App hinzu:

pod 'Google-Mobile-Ads-SDK'

Führen Sie dann in der Befehlszeile den folgenden Befehl aus:

pod install --repo-update

Wenn Sie neu bei CocoaPods sind, lesen Sie die offizielle Dokumentation zum Erstellen und Verwenden von Podfiles.

Swift-Paketmanager

Das Google Mobile Ads SDK unterstützt den Swift Package Manager ab Version 9.0.0. Folgen Sie der Anleitung unten, um das Swift-Paket zu importieren.

  1. Installieren Sie in Xcode das Google Mobile Ads Swift-Paket, indem Sie zu Datei > Pakete hinzufügen... gehen.

  2. Suchen Sie in der angezeigten Eingabeaufforderung nach dem Google Mobile Ads Swift Package GitHub-Repository:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. Wählen Sie die Version des Google Mobile Ads Swift-Pakets aus, das Sie verwenden möchten. Für neue Projekte empfehlen wir die Version Bis zur nächsten Hauptversion.

Xcode beginnt dann mit der Auflösung der Paketabhängigkeiten und lädt diese im Hintergrund herunter. Weitere Informationen zum Hinzufügen von Paketabhängigkeiten findest du im Artikel von Apple.

Manueller Download

  1. Laden Sie das SDK-Framework direkt herunter und entpacken Sie es. Importieren Sie dann die folgenden Frameworks in Ihr Xcode-Projekt:

    • GoogleAppMeasurement.xcframework
    • GoogleAppMeasurementIdentitySupport.xcframework
    • GoogleMobileAds.xcframework
    • GoogleUtilities.xcframework
    • nanopb.xcframework
    • PromisesObjC.xcframework
    • UserMessagingPlatform.xcframework
  2. Füge das Flag -ObjC Verknüpfung zu Anderen Verknüpfungs-Flags in deinen Build-Einstellungen in deinem Projekt hinzu:

Info.plist aktualisieren

Aktualisieren Sie die Info.plist-Datei Ihrer App, um zwei Schlüssel hinzuzufügen:

  1. Ein GADApplicationIdentifier-Schlüssel mit einem Stringwert IhrerAdMob App-ID (in derAdMob UI identifiziert).
  2. Einen SKAdNetworkItems-Schlüssel mit SKAdNetworkIdentifier-Werten für Google (cstr6suwn9.skadnetwork) und ausgewählte zusätzliche Käufer, die diese Werte an Google gesendet haben.
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
<key>SKAdNetworkItems</key>
  <array>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>cstr6suwn9.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4fzdc2evr5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>2fnua5tdw4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ydx93a7ass.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>5a6flpkh64.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>p78axxw29g.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v72qych5uu.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>c6k4g5qg8m.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>s39g8k73mm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3qy4746246.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3sh42y64q3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>f38h382jlk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>hs6bdukanm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>prcb7njmu6.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>v4nxqhlyqp.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>wzmmz9fp6w.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>yclnxrl5pm.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>t38b2kh725.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>7ug5zh24hu.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9rd848q2bz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n6fk4nfna4.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>kbd757ywx3.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>9t245vhmpl.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4468km3ulz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>2u9pt9hc89.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8s468mfl3y.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>av6w8kgt66.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>klf5c3l5u5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>ppxm28t8ap.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>424m5254lk.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>uw77j35x4d.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>578prtvx9j.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>4dzt52r2t5.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>e5fvkxwrpn.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>8c4e2ghe7u.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>zq492l623r.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>3qcr597p9d.skadnetwork</string>
    </dict>
  </array>

Wenn Sie ein AdMob-Konto erstellt und eine App registriert haben, können Sie es jetzt tun.

Mobile Ads SDK initialisieren

Rufe vor dem Laden von Anzeigen die Methode startWithCompletionHandler: im GADMobileAds.sharedInstance auf, die das SDK initialisiert und nach Abschluss einer Initialisierung (oder nach 30 Sekunden) einen Handler zurückruft. Dies muss nur einmal durchgeführt werden, idealerweise beim Start der App. Du solltest startWithCompletionHandler: so früh wie möglich aufrufen.

Hier ein Beispiel für den Aufruf der Methode startWithCompletionHandler: in deinem AppDelegate:

Beispiel für AppDelegate.m (Auszug)

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    GADMobileAds.sharedInstance().start(completionHandler: nil)

    return true
  }

}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [GADMobileAds.sharedInstance startWithCompletionHandler:nil];
  return YES;
}

@end

Wenn Sie die Vermittlung nutzen, sollten Sie warten, bis der Handler für den Abschluss aufgerufen wurde, bevor die Anzeigen geladen werden. So wird sichergestellt, dass alle Vermittlungsadapter initialisiert werden.

Anzeigenformat auswählen

Das Mobile Ads SDK wurde importiert und initialisiert. Sie können jetzt eine Anzeige implementieren. AdMob Sie haben die Wahl zwischen verschiedenen Anzeigenformaten, sodass Sie das für Ihre App passende Format auswählen können.

Rechteckige Anzeigen, die oben oder unten auf dem Gerätebildschirm erscheinen Banneranzeigen bleiben auf dem Bildschirm, während Nutzer mit der App interagieren. Sie können nach einer bestimmten Zeit automatisch aktualisiert werden. Wenn Sie noch keine Erfahrung mit mobiler Werbung haben, sind sie ein guter Ausgangspunkt.

Banner implementieren

Interstitial

Vollbildanzeigen, die die Benutzeroberfläche einer App verdecken, bis sie vom Nutzer geschlossen werden. Sie eignen sich am besten für natürliche Pausen im Ablauf einer App, etwa zwischen Leveln eines Spiels oder kurz nach Abschluss einer Aufgabe.

Interstitial-Anzeigen implementieren

Nativ

Anpassbare Anzeigen, die zum Design Ihrer App passen. Sie entscheiden, wie und wo sie platziert werden, damit das Layout besser zu Ihrer App passt.

Implementierung Native Ads

Verfügbar

Anzeigen, die Nutzer für das Ansehen von kurzen Videos und die Interaktion mit spielbaren Anzeigen und Umfragen belohnen. Eignet sich zur Monetarisierung kostenloser Spiele.

Anzeigen mit Prämie implementieren Anzeigen mit Prämie implementieren (neue APIs)