Erste Schritte

Dieser Leitfaden richtet sich an Publisher, die eine iOS-App mit AdMob monetarisieren möchten und Firebase nicht verwenden. Wenn Sie Firebase in Ihre App einbinden möchten oder dies in Betracht ziehen, lesen Sie stattdessen die Version AdMob mit Firebase dieses Leitfadens.

Um Anzeigen auszuliefern und Umsätze zu generieren, müssen Sie zuerst das Google Mobile Ads SDK in eine App einbinden. Nach der Integration des SDK können Sie eines oder mehrere der unterstützten Anzeigenformate implementieren.

Voraussetzungen

  • Verwenden Sie Xcode 15.1 oder höher.
  • Ausrichtung auf iOS 12.0 oder höher

Mobile Ads SDK importieren

Verwenden Sie eine der folgenden Methoden, um das Google Mobile Ads SDK zu importieren.

CocoaPods (bevorzugt)

Die einfachste Möglichkeit, das SDK in ein iOS-Projekt zu importieren, ist die Verwendung von CocoaPods. Öffnen Sie die Podfile-Datei Ihres Projekts und fügen Sie diese Zeile in das Ziel Ihrer Anwendung ein:

pod 'Google-Mobile-Ads-SDK'

Führen Sie dann über die Befehlszeile folgenden Befehl aus:

pod install --repo-update

Wenn Sie CocoaPods noch nicht kennen, finden Sie in der offiziellen Dokumentation Informationen zum Erstellen und Verwenden von Podfiles.

Swift-Paketmanager

Das Google Mobile Ads SDK unterstützt den Swift Package Manager ab Version 9.0.0. So importieren Sie das Swift-Paket:

  1. Wählen Sie in Xcode File > Add Packages... (Datei > Pakete hinzufügen...) aus, um das Google Mobile Ads Swift Package zu installieren.

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

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

Sobald Sie fertig sind, beginnt Xcode damit, die Paketabhängigkeiten aufzulösen und im Hintergrund herunterzuladen. Weitere Informationen zum Hinzufügen von Paketabhängigkeiten finden Sie im Apple-Artikel.

Manueller Download

  1. Laden Sie das SDK-Framework direkt herunter, extrahieren Sie es und importieren Sie die folgenden Frameworks in Ihr Xcode-Projekt:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  2. Fügen Sie das Verknüpfungs-Flag -ObjC in den Build-Einstellungen Ihres Projekts unter Andere Verknüpfungs-Flags hinzu:

Info.plist-Datei aktualisieren

Fügen Sie der Datei Info.plist Ihrer Anwendung zwei Schlüssel hinzu:

  1. Ein GADApplicationIdentifier-Schlüssel mit einem Stringwert vonAdMob app ID found in the AdMob UI.

  2. Einen SKAdNetworkItems-Schlüssel mit SKAdNetworkIdentifier-Werten für Google (cstr6suwn9.skadnetwork) und ausgewählte Drittanbieterkäufer, die diese Werte an Google gesendet haben.

Vollständiges Snippet

<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>4pfyvq9l8r.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>ludvb6z3bs.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>cp8zw746q7.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3sh42y64q3.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>f38h382jlk.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>hs6bdukanm.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>gta9lk7p23.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>vutu7akeur.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>y5ghdn5j9k.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n6fk4nfna4.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>v9wttpbfk9.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>n38lu8286q.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>47vhws6wlr.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>eh6m2bh4zr.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>a2p9lx4jpn.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>22mmun2rn5.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>klf5c3l5u5.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ppxm28t8ap.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>ecpz2srf59.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>uw77j35x4d.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>pwa73g5rt2.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>mlmmfzh3r3.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>3rd42ekr43.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qcr597p9d.skadnetwork</string>
  </dict>
</array>

Wenn Sie noch kein AdMob-Konto und noch keine App registriert haben, sollten Sie dies jetzt nachholen.

In einer echten App ersetzen Sie die Beispiel-App-ID durch Ihre tatsächlicheAdMob App-ID. Sie können die Beispiel-ID verwenden, wenn Sie das SDK in einer Hello World-App testen möchten.

Mobile Ads SDK initialisieren

Rufen Sie vor dem Laden von Anzeigen die Methode startWithCompletionHandler: für GADMobileAds.sharedInstance auf. Dadurch wird das SDK initialisiert und ein Abschluss-Handler wird aufgerufen, sobald die Initialisierung abgeschlossen ist (oder nach einem Zeitlimit von 30 Sekunden). Dies muss nur einmal durchgeführt werden, idealerweise beim Start der App. Sie sollten startWithCompletionHandler: so früh wie möglich aufrufen.

Hier ein Beispiel für den Aufruf der Methode startWithCompletionHandler: in Ihrer 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 verwenden, können Sie mit dem Laden von Anzeigen warten, bis der Abschluss-Handler aufgerufen wird. 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 Es stehen verschiedene Anzeigenformate zur Verfügung, aus denen Sie wählen können, welches am besten zur Nutzererfahrung Ihrer App passt.

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

Banneranzeigen 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 der App-Ausführung, z. B. zwischen Levels 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, sodass das Layout besser zum Design Ihrer App passt.

Native Anzeigen implementieren

Verfügbar

Das sind Anzeigen, in denen Nutzer belohnt werden, wenn sie sich kurze Videos ansehen oder mit spielbaren Anzeigen und Umfragen interagieren. Gut geeignet für die Monetarisierung kostenloser Apps.

Anzeigen mit Prämie implementieren