Konfigurowanie pakietu SDK do reklam mobilnych Google

Aby wyświetlać reklamy i zarabiać przychody, zintegruj Google Mobile Ads SDK z aplikacją na iOS. Aby przygotować projekt, zaimportuj i zainicjuj Google Mobile Ads SDK przed wysłaniem prośby o reklamy.

Ten przewodnik zawiera informacje o importowaniu i inicjowaniu Google Mobile Ads SDK oraz wybieraniu formatu reklamy.

Wymagania wstępne

Zanim przejdziesz dalej, upewnij się, że masz:

  • Używaj Xcode w wersji 16.0 lub nowszej.
  • kierować reklamy na urządzenia z systemem iOS 13.0 lub nowszym;

Importuj: Google Mobile Ads SDK

Aby zaimportować Google Mobile Ads SDK, wykonaj czynności opisane w jednej z tych sekcji:

Swift Package Manager (zalecany)

Aby dodać zależność pakietu do projektu, wykonaj te czynności:

  1. Otwórz Xcode.
  2. Kliknij File > Add Package Dependencies... (Plik > Dodaj zależności pakietu...).
  3. Zainstaluj pakiet Google Mobile Ads SDK Swift.

  4. W wyświetlonym oknie wyszukaj repozytorium pakietu Google Mobile Ads Swift w GitHubie:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  5. Wybierz wersję Google Mobile Ads SDK pakietu Swift, której chcesz użyć. W przypadku nowych projektów zalecamy używanie opcji Do następnej wersji głównej.

CocoaPods

Aby używać CocoaPods, wykonaj te czynności:

  1. Otwórz plik Podfile projektu i dodaj ten wiersz do konfiguracji kompilacji target aplikacji:

    pod 'Google-Mobile-Ads-SDK'
    
  2. W terminalu uruchom to polecenie:

    pod install --repo-update

Konfigurowanie docelowego wdrożenia dla Xcode 27

Xcode 27 wymaga, aby wszystkie cele miały minimalny cel wdrożenia iOS 15.0. Ponieważ Google Mobile Ads SDK obsługuje iOS 13.0, kompilacje Xcode 27 kończą się niepowodzeniem podczas korzystania z CocoaPods.

Aby rozwiązać ten problem, wykonaj te czynności:

  1. Otwórz Podfile projektu i dodaj post_install, który ustawia miejsce wdrożenia na 15.0. Jeśli masz blok post_install, dodaj wewnętrzną pętlę do istniejącego bloku.

    W tym przykładzie klucz IPHONEOS_DEPLOYMENT_TARGET jest ustawiony na wartość 15.0 dla wszystkich miejsc docelowych poda:

    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. Aby ponownie zainstalować pody, uruchom to polecenie:

    pod install --repo-update

Pobieranie ręczne

Aby ręcznie pobrać Google Mobile Ads SDK, wykonaj te czynności:

  1. Pobierz Google Mobile Ads SDK.
  2. Rozpakuj pakiet googlemobileadssdkios.zip.
  3. W projekcie Xcode dodaj te platformy:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  4. W ustawieniach Ogólne projektu docelowego przejdź do sekcji Frameworks, Libraries, and Embedded Content (Frameworki, biblioteki i treści osadzone).

  5. Sprawdź, czy opcje GoogleMobileAds.xcframeworkUserMessagingPlatform.xcframework są ustawione na Osadź i podpisz.

  6. W ustawieniach kompilacji projektu wykonaj te czynności:

    • Dodaj ścieżkę /usr/lib/swift do ścieżek wyszukiwania ścieżki wykonywania.
    • Dodaj flagę linkera -ObjC do pola Other Linker Flags (Inne flagi linkera).

Aktualizowanie pliku Info.plist

W pliku Info.plist aplikacji dodaj te klucze:

Kompletny przykład

<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>

Zastąp SAMPLE_APP_ID identyfikatorem aplikacji w usłudze Ad Manager. Podczas testowania użyj przykładowego identyfikatora aplikacji pokazanego w poprzednim przykładzie.

Aby przyspieszyć inicjowanie aplikacji, połącz grupy przychodów z konkretnymi aplikacjami. Jeśli grupa przychodów jest kierowana na iOS, ale nie jest połączona z aplikacją, Google wysyła ją do wszystkich aplikacji na iOS na Twoim koncie. Takie podejście może spowolnić działanie.

Inicjowanie Google Mobile Ads SDK

Zanim wczytasz reklamy, zainicjuj Google Mobile Ads SDK, wywołując metodę start() z właściwości GADMobileAds.sharedInstance. Ta metoda wywołuje procedurę obsługi zakończenia po zakończeniu przetwarzania przez Google Mobile Ads SDK i adaptery mediacji lub po 30 sekundach.

Poniższy przykład inicjuje Google Mobile Ads SDK:

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];

Podczas inicjowania Google Mobile Ads SDK może wstępnie wczytywać reklamy lub inicjować pakiety SDK firm zewnętrznych podczas wywoływania metody startWithCompletionHandler:. Jeśli musisz uzyskać zgodę użytkowników z Europejskiego Obszaru Gospodarczego (EOG), Wielkiej Brytanii lub Szwajcarii, ustaw flagi dotyczące konkretnych żądań. Jeśli musisz ustawić flagi dotyczące konkretnego żądania, zrób to przed zainicjowaniem Google Mobile Ads SDK. Więcej informacji znajdziesz w sekcji Kierowanie.

Wybierz format reklamy

Po zaimportowaniu Google Mobile Ads SDK możesz wybrać format reklamy do wdrożenia.

Ad Manager oferuje te formaty reklam:

Format reklamy Opis Dokumentacja
Baner Wyświetla prostokątne reklamy w sekcji układu aplikacji. Reklama odświeża się automatycznie w określonych odstępach czasu. Użytkownicy widzą te reklamy okresowo, gdy pozostają na tym samym ekranie. Konfigurowanie banerów reklamowych
Pełnoekranowa Wyświetla w aplikacji reklamy zajmujące całą stronę. Umieść tę reklamę w naturalnych przerwach między elementami strony lub podczas przejścia z jednego etapu do następnego w interfejsie aplikacji, np. po ukończeniu poziomu w aplikacji z grą mobilną. Reklamy pełnoekranowe
Natywna Umożliwia dostosowywanie w aplikacjach zasobów, takich jak nagłówki i wezwania do działania. Dostosowując reklamę, możesz tworzyć reklamy pasujące do projektu graficznego aplikacji. Wczytywanie reklamy natywnej
Z nagrodą Użytkownicy zdobywają nagrody w aplikacji, takie jak monety lub punkty, grając w gry, wypełniając ankiety lub oglądając filmy. Możesz ustawić nagrody w jednostkach reklamowych i określić wartości nagród oraz korzyści, które otrzymają użytkownicy. Reklamy z nagrodą
Reklama pełnoekranowa z nagrodą Umożliwia oferowanie nagród, takich jak monety lub dodatkowe życia, za oglądanie reklam, które wyświetlają się w momentach przejściowych w aplikacji. Reklamy pełnoekranowe z nagrodą
Przy otwarciu aplikacji Wyświetla się, gdy użytkownicy otwierają aplikację lub do niej wracają. Reklama nakłada się na wczytywany ekran. Reklamy wyświetlane przy otwarciu aplikacji