Jetzt starten

Die Integration des Google Mobile Ads SDK in eine App ist der erste Schritt, um Anzeigen schalten und Einnahmen erzielen zu können. Nachdem du das SDK eingebunden hast, kannst du eines oder mehrere der unterstützten Anzeigenformate implementieren.

Voraussetzungen

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

Mobile Ads SDK importieren

CocoaPods (bevorzugt)

Die einfachste Methode zum Importieren des SDKs in ein iOS-Projekt ist die Verwendung von CocoaPods. Öffnen Sie die Podfile Ihres Projekts und fügen Sie diese Zeile dem Ziel Ihrer Anwendung hinzu:

pod 'Google-Mobile-Ads-SDK'

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

pod install --repo-update

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

Swift-Paketmanager

Das Google Mobile Ads SDK unterstützt Swift Package Manager ab Version 9.0.0. Führen Sie die folgenden Schritte aus, um das Swift-Paket zu importieren.

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

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

    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 Verwendung der nächsten Hauptversion.

Wenn 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 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ügen Sie in den Build-Einstellungen Ihres Projekts das Verknüpfungs-Flag -ObjC unter Other Linker Flags (Andere Verknüpfungs-Flags) ein:

Info.plist aktualisieren

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

  1. Ein GADApplicationIdentifier-Schlüssel mit einem Stringwert IhrerAd Manager App-ID (in derAd Manager -UI identifiziert).
  2. Einen SKAdNetworkItems-Schlüssel mit SKAdNetworkIdentifier-Werten für Google (cstr6suwn9.skadnetwork) und zusätzliche Käufer auswählen, 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>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>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>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>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>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>ecpz2srf59.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>uw77j35x4d.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>gta9lk7p23.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>

Für eine optimale Initialisierungsleistung ist es wichtig, die Ertragsgruppen den Anwendungen zuzuweisen, in denen sie verwendet werden. Konfigurationen für Ertragsgruppen, die auf iOS ausgerichtet und nicht mit einer bestimmten App verknüpft sind, werden an alle iOS-Apps in Ihrem Konto gesendet. Dadurch verlängert sich unter Umständen die für die Initialisierung erforderliche Zeit.

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 nach Abschluss der Initialisierung (oder nach einer Zeitüberschreitung von 30 Sekunden) zurückgerufen. Dies muss nur einmal ausgefü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 nutzen, sollten 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 jetzt importiert und initialisiert. Sie können nun eine Anzeige implementieren. Ad Manager Sie haben die Wahl zwischen verschiedenen Anzeigenformaten, damit Sie das für Ihre App am besten geeignete 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, und können nach einer bestimmten Zeit automatisch aktualisiert werden. Wenn Sie noch nicht mit mobiler Werbung vertraut sind, ist das ein guter Ausgangspunkt.

Banner implementieren

Interstitial

Vollbildanzeigen, die die Benutzeroberfläche einer App verdecken, bis sie vom Nutzer geschlossen werden Sie werden am besten bei natürlichen Pausen während der Ausführung einer App eingesetzt, z. B. zwischen Levels eines Spiels oder kurz nachdem eine Aufgabe abgeschlossen ist.

Interstitial-Anzeigen implementieren

Nativ

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

In Google Ad Manager gibt es zwei Möglichkeiten, native Anzeigen zu implementieren: native Designs und benutzerdefiniertes Rendering.

Native Designs wurden so gestaltet, dass die Implementierung nativer Anzeigen so einfach wie möglich ist. Wenn Sie mit dem Format noch nicht vertraut sind, ist es die richtige Wahl. Das benutzerdefinierte Rendering wurde entwickelt, um die Freiheit beim Erstellen von Präsentationen zu maximieren.

Native Designs implementieren Benutzerdefiniertes Rendering implementieren

Verfügbar

Anzeigen, die Nutzer für das Ansehen von kurzen Videos und die Interaktion mit spielbaren Anzeigen und Umfragen belohnen. Geeignet zum Monetarisieren kostenloser Nutzer.

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