Jetzt starten

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.3 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 Google Mobile Ads SDK herunter und Embed & Signverwenden Sie die folgenden Frameworks in Ihrem 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 vonAd Manager app ID found in the Ad Manager UI and of the form ca-app-pub-################~##########.

  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>

Für eine optimale Initialisierungsleistung ist es wichtig, Ihre Ertragsgruppen den Anwendungen zuzuordnen, in denen sie verwendet werden. Konfigurationen von Ertragsgruppen, die auf iOS ausgerichtet und keiner bestimmten App zugeordnet sind, werden an alle iOS-Apps in Ihrem Konto gesendet. Dadurch verlängert sich unter Umständen die Initialisierungszeit.

In einer echten App ersetzen Sie die Beispiel-App-ID durch Ihre tatsächlicheAd Manager 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:

AppDelegate-Beispiel (Auszug)

Swift

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

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

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

    return true
  }
}

SwiftUI

import GoogleMobileAds

class AppDelegate: UIResponder, UIApplicationDelegate {

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

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

    return true
  }
}

@main
struct YourApp: App {
  // To handle app delegate callbacks in an app that uses the SwiftUI lifecycle,
  // you must create an application delegate and attach it to your `App` struct
  // using `UIApplicationDelegateAdaptor`.
  @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate

  var body: some Scene {
    WindowGroup {
      NavigationView {
        ContentView()
      }
    }
  }
}

Objective-C

@import GoogleMobileAds;

@implementation AppDelegate

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

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

@end

Anzeigenformat auswählen

Das Mobile Ads SDK wurde importiert und initialisiert. Sie können jetzt eine Anzeige implementieren. Ad Manager Es stehen verschiedene Anzeigenformate zur Verfügung, aus denen Sie wählen können, welches am besten zur Nutzererfahrung Ihrer App passt.

SwiftUI-Entwickler folgen unserem SwiftUI-Leitfaden.

Banneranzeigenblöcke enthalten rechteckige Anzeigen, die einen Teil der App-Oberfläche einnehmen. Sie können nach einer festgelegten Zeit automatisch aktualisiert werden. Das bedeutet, dass Nutzer in regelmäßigen Abständen eine neue Anzeige aufrufen, auch wenn sie in Ihrer App auf demselben Bildschirm bleiben. Dieses Anzeigenformat ist auch am einfachsten zu implementieren.

Banneranzeigen implementieren

Interstitial

Mit Interstitial-Anzeigenblöcken werden ganzseitige Anzeigen in Ihrer App ausgeliefert. Platzieren Sie die Anzeigenblöcke an natürlichen Unterbrechungs- oder Übergangspunkten in der App, etwa nach dem Abschluss eines Levels in einer Gaming-App.

Interstitial-Anzeigen implementieren

Nativ

Bei nativen Anzeigen können Sie anpassen, wie Assets wie Anzeigentitel und Calls-to-Action in Ihren Apps dargestellt werden. Wenn Sie die Anzeige selbst gestalten, können Sie eine natürliche, unaufdringliche Anzeigenpräsentation erstellen, die die Nutzererfahrung verbessert.

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

Native Designs wurden entwickelt, um die Implementierung nativer Anzeigen zu vereinfachen. Sie sind besonders dann geeignet, wenn Sie mit dem Format noch nicht vertraut sind. Das benutzerdefinierte Rendering wurde entwickelt, um Ihnen beim Erstellen von Präsentationen mehr Freiheiten zu bieten.

Native Designs implementieren Native Anzeigen implementieren (benutzerdefiniertes Rendering)

Verfügbar

Mit Anzeigenblöcken für Anzeigen mit Prämie können Nutzer Spiele spielen, an Umfragen teilnehmen oder sich Videos ansehen, um In-App-Prämien wie Münzen, Extraleben oder Punkte zu erhalten. Sie können verschiedene Prämien für verschiedene Anzeigenblöcke festlegen und die Prämienwerte und -artikel angeben, die der Nutzer erhalten hat.

Anzeigen mit Prämie implementieren

Interstitial mit Prämie

Interstitial-Anzeigen mit Prämie sind ein neues Anzeigenformat mit Anreizen, mit dem Sie Prämien wie Münzen oder Extraleben für Anzeigen anbieten können, die automatisch bei natürlichen App-Übergängen eingeblendet werden.

Im Gegensatz zu Anzeigen mit Prämie müssen Nutzer nicht zustimmen, um Interstitial-Anzeigen mit Prämie zu sehen.

Anstelle der Zustimmungsaufforderung in Anzeigen mit Prämie ist für Interstitials mit Prämie ein Eingangsbildschirm erforderlich, auf dem die Prämie angezeigt wird und der Nutzer die Möglichkeit hat, die Teilnahme zu beenden.

Interstitial-Anzeigen mit Prämie implementieren

App-Start-Anzeige

App-Start-Anzeigen sind ein Anzeigenformat, das eingeblendet wird, wenn Nutzer die App öffnen oder zu ihr zurückkehren. Die Anzeige überlagert den Ladebildschirm.

App-Start-Anzeigen implementieren