Google Mobile Ads SDK einrichten

Wenn Sie Anzeigen ausliefern und Einnahmen erzielen möchten, müssen Sie Google Mobile Ads SDK in Ihre iOS-App einbinden. Dazu importieren und initialisieren Sie Google Mobile Ads SDK, bevor Sie Anzeigen anfordern.

In diesem Leitfaden wird beschrieben, wie Sie Google Mobile Ads SDK importieren und initialisieren und ein Anzeigenformat auswählen.

Vorbereitung

Bevor Sie fortfahren, benötigen Sie Folgendes:

  • Verwenden Sie Xcode 16.0 oder höher.
  • iOS 13.0 oder höher als Zielversion festlegen

Google Mobile Ads SDK importieren

Führen Sie einen der folgenden Abschnitte aus, um Google Mobile Ads SDK zu importieren:

Swift Package Manager (empfohlen)

So fügen Sie Ihrem Projekt eine Paketabhängigkeit hinzu:

  1. Öffnen Sie Xcode.
  2. Gehen Sie zu File > Add Package Dependencies….
  3. Installieren Sie das Google Mobile Ads SDK-Swift-Paket.

  4. Suchen Sie im angezeigten Prompt nach dem GitHub-Repository für das Google Mobile Ads Swift Package:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  5. Wählen Sie die Version des Google Mobile Ads SDK-Swift-Pakets aus, die Sie verwenden möchten. Für neue Projekte empfehlen wir die Verwendung von Up to Next Major Version (Bis zur nächsten Hauptversion).

CocoaPods

So verwenden Sie CocoaPods:

  1. Öffnen Sie die Podfile-Datei Ihres Projekts und fügen Sie diese Zeile der target-Build-Konfiguration Ihrer App hinzu:

    pod 'Google-Mobile-Ads-SDK'
    
  2. Führen Sie im Terminal den folgenden Befehl aus:

    pod install --repo-update

Bereitstellungsziel für Xcode 27 konfigurieren

Für Xcode 27 ist für alle Ziele mindestens iOS 15.0 als Bereitstellungsziel erforderlich. Da Google Mobile Ads SDK iOS 13.0 unterstützt, schlagen Xcode 27-Builds fehl, wenn CocoaPods verwendet wird.

Führen Sie die folgenden Schritte aus, um das Problem zu beheben:

  1. Öffnen Sie die Podfile-Datei Ihres Projekts und fügen Sie einen post_install-Hook hinzu, der das Bereitstellungsziel auf 15.0 festlegt. Wenn Sie einen post_install-Block haben, fügen Sie die innere Schleife dem vorhandenen Block hinzu.

    Im folgenden Beispiel wird der Schlüssel IPHONEOS_DEPLOYMENT_TARGET für alle Pod-Ziele auf 15.0 festgelegt:

    post_install do |installer|
      installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
          config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0'
        end
      end
    end
    
  2. Führen Sie den folgenden Befehl aus, um Ihre Pods neu zu installieren:

    pod install --repo-update

Manueller Download

So laden Sie Google Mobile Ads SDK manuell herunter:

  1. Herunterladen Google Mobile Ads SDK
  2. Extrahieren Sie das Paket googlemobileadssdkios.zip.
  3. Fügen Sie Ihrem Xcode-Projekt die folgenden Frameworks hinzu:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  4. Rufen Sie in den allgemeinen Einstellungen des Ziels den Bereich Frameworks, Bibliotheken und eingebettete Inhalte auf.

  5. Prüfen Sie, ob Sie GoogleMobileAds.xcframework und UserMessagingPlatform.xcframework auf Einbetten und signieren festgelegt haben.

  6. Gehen Sie in den Buildeinstellungen Ihres Projekts so vor:

    • Fügen Sie den Pfad /usr/lib/swift zu Runpath Search Paths (Suchpfade für den Ausführungspfad) hinzu.
    • Fügen Sie das Linker-Flag -ObjC zu Other Linker Flags hinzu.

Info.plist-Datei aktualisieren

Fügen Sie der Datei Info.plist Ihrer App die folgenden Schlüssel hinzu:

  • Ein GADApplicationIdentifier-Schlüssel mit einem Stringwert Ihrer Ad Manager-App-ID, die in der Ad Manager-Benutzeroberfläche zu finden ist und das Format ca-app-pub-################~########## hat.

  • Eine SKAdNetworkItems-Taste. Dieser Schlüssel enthält SKAdNetworkIdentifier-Werte für Google cstr6suwn9.skadnetwork und ausgewählte Drittanbieterkäufer.

Vollständiges Beispiel

<key>GADApplicationIdentifier</key>
<!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~1458002511 -->
<string>SAMPLE_APP_ID</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>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>wg4vff78zm.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>mlmmfzh3r3.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>su67r6k2v3.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>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>44jx6755aq.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>k674qkevps.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>kbmxgpxpgc.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>tl55sbb4fm.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>c3frkrj4fj.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>3rd42ekr43.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>97r2b46745.skadnetwork</string>
  </dict>
  <dict>
    <key>SKAdNetworkIdentifier</key>
    <string>3qcr597p9d.skadnetwork</string>
  </dict>
</array>

Ersetzen Sie SAMPLE_APP_ID durch Ihre Ad Manager-App-ID. Verwenden Sie beim Testen die Beispiel-App-ID aus dem vorherigen Beispiel.

Wenn Sie Ihre Ertragsgruppen mit bestimmten Apps verknüpfen, kann Ihre App schneller initialisiert werden. Wenn eine Ertragsgruppe auf iOS ausgerichtet ist, aber nicht mit einer App verknüpft ist, sendet Google die Gruppe an alle iOS-Apps in Ihrem Konto. Dieser Ansatz kann die Leistung verlangsamen.

Google Mobile Ads SDK initialisieren

Initialisieren Sie Google Mobile Ads SDK, bevor Sie Anzeigen laden, indem Sie die Methode start() über die Eigenschaft GADMobileAds.sharedInstance aufrufen. Mit dieser Methode wird ein Completion-Handler aufgerufen, nachdem Google Mobile Ads SDK und die Vermittlungsadapter die Verarbeitung abgeschlossen haben oder nach 30 Sekunden.

Im folgenden Beispiel wird Google Mobile Ads SDK initialisiert:

Swift

// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()

SwiftUI

// Initialize the Google Mobile Ads SDK.
MobileAds.shared.start()

Objective-C

// Initialize the Google Mobile Ads SDK.
[GADMobileAds.sharedInstance startWithCompletionHandler:nil];

Bei der Initialisierung lädt Google Mobile Ads SDK möglicherweise Anzeigen vor oder initialisiert Drittanbieter-SDKs, wenn die Methode startWithCompletionHandler: aufgerufen wird. Wenn Sie die Einwilligung von Nutzern im Europäischen Wirtschaftsraum (EWR), im Vereinigten Königreich oder in der Schweiz einholen müssen, legen Sie anfragespezifische Flags fest. Wenn Sie anfragespezifische Flags festlegen müssen, tun Sie das, bevor Sie Google Mobile Ads SDK initialisieren. Weitere Informationen finden Sie unter Targeting.

Anzeigenformat auswählen

Nachdem Sie Google Mobile Ads SDK importiert haben, können Sie ein Anzeigenformat auswählen, das Sie implementieren möchten.

In Ad Manager sind die folgenden Anzeigenformate verfügbar:

Anzeigenformat Beschreibung Dokumentation
Banner Hier werden rechteckige Anzeigen in einem Bereich des App-Layouts ausgeliefert. Diese Anzeige wird in festgelegten Intervallen automatisch aktualisiert. Nutzer sehen diese Anzeigen regelmäßig, wenn sie auf demselben Bildschirm bleiben. Banneranzeigen einrichten
Interstitial Mit diesem Anzeigenformat werden ganzseitige Anzeigen in Ihrer App bereitgestellt. Die Anzeigenblöcke sollten an natürlichen Unterbrechungs- oder Übergangspunkten platziert werden, z. B. in einer Gaming-App nach Abschluss eines Levels. Interstitial-Anzeigen
Nativ Damit können Sie Assets wie Anzeigentitel und Calls-to-Action in Ihren Apps anpassen. Wenn Sie die Anzeige anpassen, erstellen Sie Anzeigen, die zum visuellen Design Ihrer App passen. Native Anzeige laden
Verfügbar Nutzer können sich In-App-Prämien wie Münzen oder Punkte verdienen, indem sie Spiele spielen, an Umfragen teilnehmen oder sich Videos ansehen. Sie können Prämien für Anzeigenblöcke festlegen und angeben, welche Prämienwerte oder -artikel Ihre Nutzer erhalten. Anzeigen mit Prämie
Interstitial mit Prämie Sie können damit Nutzer, die sich die Werbung ansehen, mit Münzen oder Extraleben belohnen. Interstitial-Anzeigen mit Prämie
App-Start Wird eingeblendet, wenn Nutzer Ihre App öffnen oder zu ihr zurückkehren. Die Anzeige wird als Overlay über dem Ladebildschirm eingeblendet. App-Start-Anzeigen