Konfigurowanie pakietu SDK do reklam mobilnych Google

Pierwszym krokiem, który musisz wykonać, aby zacząć wyświetlać reklamy i zarabiać, jest integracja Google Mobile Ads SDK z Twoją aplikacją. Gdy to zrobisz, możesz zaimplementować dowolną liczbę obsługiwanych formatów reklam.

Wymagania wstępne

  • Używaj Xcode w wersji 16.0 lub nowszej.
  • Ustaw docelowy system iOS w wersji 13.0 lub nowszej.

Importowanie Google Mobile Ads SDK

Aby zaimportować Google Mobile Ads SDK, użyj jednej z tych metod.

Swift Package Manager

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

  1. W Xcode zainstaluj pakiet Swift do reklam mobilnych Google, klikając kolejno File > Add Package Dependencies... (Plik > Dodaj zależności pakietu).

  2. W wyświetlonym oknie wyszukaj repozytorium GitHub pakietu Swift do reklam mobilnych Google:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. Wybierz wersję pakietu Swift do reklam mobilnych Google, której chcesz używać. W przypadku nowych projektów zalecamy używanie opcji Up to Next Major Version (Do następnej wersji głównej).

CocoaPods

Zanim przejdziesz dalej, zapoznaj się z informacjami o tworzeniu i używaniu plików Podfile w artykule Korzystanie z CocoaPods.

Aby korzystać z 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:

    pod install --repo-update

Pobieranie ręczne

  1. Pobierz Google Mobile Ads SDK i Embed & Sign te frameworki w projekcie Xcode:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  2. W ustawieniach kompilacji projektu:

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

Zaktualizuj plik Info.plist

Zaktualizuj plik Info.plist aplikacji, aby dodać 2 klucze:

  1. Klucz GADApplicationIdentifier z wartością ciągu znaków, która jest identyfikatorem aplikacji w Ad ManagerzeZnajdziesz go w interfejsie Ad Managera. Ma on postaćca-app-pub-################~##########.

  2. Klucz SKAdNetworkItems z wartościami SKAdNetworkIdentifier dla Google (cstr6suwn9.skadnetwork) i wybranych kupujących zewnętrznych którzy przekazali te wartości Google.

Pełny fragment kodu

<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 Ad Managerze. Podczas testowania użyj przykładowego identyfikatora aplikacji pokazanego w poprzednim przykładzie.

Aby uzyskać optymalną wydajność inicjowania, ważne jest, aby powiązać grupy zysku z konkretnymi aplikacjami, w których są używane. Konfiguracje grup zysku kierowane na iOS i niepowiązane z żadną konkretną aplikacją będą wysyłane do wszystkich aplikacji na iOS na Twoim koncie, co może wydłużyć czas potrzebny na inicjowanie.

Inicjowanie Google Mobile Ads SDK

Zanim zaczniesz wczytywać reklamy, wywołaj metodę start() w GADMobileAds.sharedInstance, co spowoduje zainicjowanie pakietu SDK, a po jego zakończeniu (lub 30 sekundach bezczynności) wywołanie zwrotne detektora. Wywołaj start() jak najwcześniej.

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

Wybierz format reklamy

Google Mobile Ads SDK został zaimportowany i zainicjowany. Możesz teraz zaimplementować reklamę. Ad Manager oferuje wiele różnych formatów reklam, dzięki czemu możesz wybrać ten, który najlepiej pasuje do wrażeń użytkowników w Twojej aplikacji.

W jednostkach banerów reklamowych wyświetlane są prostokątne reklamy, które zajmują część układu aplikacji. Mogą one być automatycznie odświeżane po upływie określonego czasu. Oznacza to, że użytkownicy zobaczą nowe reklamy w regularnych odstępach czasowych, nawet jeśli pozostaną na tym samym ekranie w aplikacji. Jest to format reklamy najprostszy do wdrożenia.

Implementowanie banerów reklamowych

Pełnoekranowa

Jednostki reklam pełnoekranowych wyświetlają w aplikacji reklamy zajmujące całą stronę. Umieść je między elementami lub w przejściach aplikacji, tak aby pasowały do interfejsu, np. po ukończeniu poziomu w grze w aplikacji z grą mobilną.

Implementowanie reklam pełnoekranowych

Natywna

Reklamy natywne to reklamy, w których możesz dostosować sposób prezentowania w aplikacjach zasobów takich jak nagłówki i wezwania do działania. Dzięki samodzielnemu określeniu stylu reklamy możesz stworzyć naturalne, nienachalne prezentacje reklam, które mogą wzbogacić wrażenia użytkowników.

Google Ad Manager oferuje 2 sposoby implementowania reklam natywnych: style natywne i standardowe reklamy natywne z renderowaniem niestandardowym.

Style natywne zostały zaprojektowane tak, aby uprościć implementowanie reklam natywnych. To świetny wybór, jeśli dopiero zaczynasz korzystać z tego formatu. Renderowanie niestandardowe zostało zaprojektowane tak, aby zapewnić Ci jak największą swobodę w tworzeniu prezentacji.

Implementowanie stylów natywnych Implementowanie reklam natywnych (renderowanie niestandardowe)

Z nagrodą

Jednostki reklamowe z nagrodą umożliwiają użytkownikom granie w gry, wypełnianie ankiet lub oglądanie filmów, aby zdobywać nagrody w aplikacji, takie jak monety, dodatkowe życia lub punkty. Możesz ustawić różne nagrody w różnych jednostkach reklamowych i określić wartości nagród oraz elementy, które otrzymają użytkownicy.

Implementowanie reklam z nagrodą

Reklama pełnoekranowa z nagrodą

Reklama pełnoekranowa z nagrodą to nowy format reklamy zachęcającej użytkownika do jej obejrzenia. Umożliwia uzyskanie nagród w aplikacji, takich jak monety lub dodatkowe życia. Reklamy tego typu wyświetlają się automatycznie w naturalnych momentach przejściowych w aplikacji.

W przeciwieństwie do reklam z nagrodą użytkownicy nie muszą wyrazić zgody na wyświetlenie reklamy pełnoekranowej z nagrodą.

Zamiast prośby o zgodę stosowanej w reklamach z nagrodą reklamy pełnoekranowe z nagrodą na początku wyświetlają ekran wprowadzający z informacjami o nagrodzie i dają użytkownikom możliwość rezygnacji, jeśli chcą to zrobić.

Implementowanie reklam pełnoekranowych z nagrodą

Przy otwarciu aplikacji

Reklama wyświetlana przy otwarciu aplikacji to format reklamy, który pojawia się, gdy użytkownicy otwierają Twoją aplikację lub do niej wracają. Reklama nakłada się na wczytywany ekran.

Implementowanie reklam wyświetlanych przy otwarciu aplikacji