Rozpocznij

Ten przewodnik jest przeznaczony dla wydawców, którzy chcą zarabiać na aplikacji na iOS dzięki AdMob i nie używają Firebase. Jeśli planujesz dodać Firebase do swojej aplikacji (lub nad rozwiązaniem problemu), zobacz AdMob z Firebase ten przewodnik.

Integracja pakietu SDK do reklam mobilnych Google z aplikacją to pierwszy krok wyświetlanie reklam i zarabianie na nich. Po zintegrowaniu pakietu SDK możesz: przejdź do implementacji co najmniej jednej obsługiwanych formatów reklam.

Wymagania wstępne

  • Używaj Xcode w wersji 15.3 lub nowszej
  • Kierowanie na system iOS 12.0 lub nowszy

Zaimportuj pakiet SDK do reklam mobilnych

Aby zaimportować pakiet SDK do reklam mobilnych Google, użyj jednej z poniższych metod.

CocoaPods (preferowane)

Najprostszym sposobem zaimportowania pakietu SDK do projektu iOS jest użycie CocoaPods. Otwarta w pliku Podfile projektu i dodaj ten wiersz do miejsca docelowego aplikacji:

pod 'Google-Mobile-Ads-SDK'

Następnie uruchom polecenie w wierszu poleceń:

pod install --repo-update

Jeśli dopiero zaczynasz korzystać z CocoaPods, zapoznaj się z ich oficjalna dokumentacja tworzenia i używania plików Podfiles.

Menedżer pakietów Swift

Pakiet SDK do reklam mobilnych Google obsługuje pakiet Swift Menedżer od wersji 9.0.0. Obserwuj te jak zaimportować pakiet Swift:

  1. Zainstaluj w Xcode pakiet Swift do reklam mobilnych Google. W tym celu przejdź na stronę Plik > Dodaj pakiety...

  2. W wyświetlonym oknie wyszukaj pakiet Swift do reklam mobilnych Google. Repozytorium GitHub:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. Wybierz wersję pakietu Swift do reklam mobilnych Google, której chcesz użyć. W przypadku nowych projektów zalecamy używanie wersji aż do następnej wersji głównej.

Gdy skończysz, Xcode rozpocznie rozpoznawanie zależności pakietów pobierając je w tle. Więcej informacji o dodawaniu pakietu Więcej informacji znajdziesz w artykule Apple.

Pobieranie ręczne

  1. Pobierz pakiet SDK do reklam mobilnych Google oraz Embed & Sign te platformy do projektu Xcode:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  2. Dodaj flagę łączącego -ObjC do innych flag tagu łączącego w polu flagi projektu ustawienia kompilacji:

Zaktualizuj plik Info.plist

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

  1. Klucz GADApplicationIdentifier z wartością ciągu tekstowego AdMob app ID found in the AdMob UI

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

Pełny fragment

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

Jeśli nie masz jeszcze utworzonej konta AdMob i zarejestrowali aplikację, teraz jest świetny moment. aby to zrobić.

W rzeczywistej aplikacji zastąp przykładowy identyfikator aplikacji rzeczywistym identyfikatorem AdMob identyfikator aplikacji. Możesz użyć identyfikatora próbki, jeśli: tylko eksperymentujesz z pakietem SDK w aplikacji Hello World.

Zainicjowanie pakietu SDK do reklam mobilnych

Przed wczytaniem reklam wywołaj metodę startWithCompletionHandler: w GADMobileAds.sharedInstance , który inicjuje pakiet SDK i jednokrotnie wywołuje moduł obsługi uzupełniania zostanie wykonane (lub gdy upłynie 30 sekund). Wystarczy zrobić to raz, najlepiej przy uruchamianiu aplikacji. Należy zadzwonić pod numer startWithCompletionHandler: jak najszybciej.

Oto przykład wywołania metody startWithCompletionHandler: w: AppDelegate:

Przykładowy element AppDelegate (fragment)

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

Wybierz format reklamy

Pakiet SDK do reklam mobilnych został zaimportowany i zainicjowany. Możesz implementować reklamy. AdMob Oferuje wiele różnych formatów reklam, aby można było wybrać taki, który najlepiej pasuje do użytkownika aplikacji z myślą o użytkownikach.

Programiści SwiftUI powinni skorzystać z naszego SwiftUI .

W jednostkach banerów reklamowych wyświetlane są prostokątne reklamy, które zajmują część układ. Mogą być automatycznie odświeżane po upływie określonego czasu. Oznacza to, że użytkownicy oglądają nową reklamę w regularnych odstępach czasu, nawet jeśli nie zmieniają się ekranu w aplikacji. Jest to również najprostszy do wdrożenia format reklamy.

Implementowanie banerów reklamowych

Pełnoekranowa

Jednostki reklamy pełnoekranowej umożliwiają wyświetlanie w aplikacji reklam zajmujących całą stronę. Ustaw je w naturalnym przerwy i przejścia w interfejsie aplikacji, np. po ukończeniu poziomu; w grze mobilnej.

Zastosuj reklamy pełnoekranowe

Natywna

Reklamy natywne to reklamy, w których możesz dostosować sposób, w jaki zasoby, takie jak nagłówki, Wezwania do działania są wyświetlane w aplikacjach. Dostosowując styl reklamy, możesz: tworzyć naturalne, dyskretne prezentacje, które wzbudzą zainteresowanie z myślą o użytkownikach.

Implementowanie reklam natywnych

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 poszczególnych jednostkach reklamowych i określać wartości nagród produkty otrzymane przez użytkownika.

Wdróż reklamy z nagrodą

Reklama pełnoekranowa z nagrodą

Reklama pełnoekranowa z nagrodą to nowy format reklam zachęcających do działania, oferuj nagrody, takie jak monety lub dodatkowe życia, za reklamy, które wyświetlają się automatycznie w naturalnych momentach przejściowych aplikacji.

W przeciwieństwie do reklam z nagrodą użytkownicy nie muszą wyrazić zgody na obejrzenie reklamy z nagrodą. reklama pełnoekranowa.

Zamiast prośby o zgodę na wykorzystanie danych w reklamach z nagrodą reklamy pełnoekranowe z nagrodą wymagają: z informacją o nagrodzie i możliwości rezygnacji, jeśli że chcą to robić.

Implementowanie reklam pełnoekranowych z nagrodą

Reklama przy otwarciu aplikacji

Reklamy wyświetlane przy otwarciu aplikacji pojawiają się, gdy użytkownicy otwierają aplikacji. Reklama nakłada się na ekran wczytywania.

Wdrażanie reklam wyświetlanych przy otwarciu aplikacji