Questa guida è rivolta ai publisher che vogliono monetizzare un'app per iOS con AdMob e non utilizzano Firebase. Se prevedi di includere Firebase nella tua app (o lo stai prendendo in considerazione), consulta la versione AdMob con Firebase di questa guida.
Integrare l'SDK Google Mobile Ads in un'app è il primo passo per mostrare gli annunci e generare entrate. Una volta integrato l'SDK, puoi procedere all'implementazione di uno o più formati degli annunci supportati.
Prerequisiti
- Utilizza Xcode 16.0 o versioni successive
- iOS 12.0 o versioni successive
- Consigliato: Crea un account AdMob e registra un'app.
Importa l'SDK Mobile Ads
Utilizza uno dei seguenti metodi per importare l'SDK Google Mobile Ads.
Swift Package Manager
Per aggiungere una dipendenza del pacchetto al tuo progetto:
In Xcode, installa il pacchetto Swift di Google Mobile Ads andando a File > Add Package Dependencies… (File > Aggiungi dipendenze pacchetto…).
Nel prompt visualizzato, cerca il repository GitHub del pacchetto Swift di Google Mobile Ads:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
Seleziona la versione del pacchetto Swift di Google Mobile Ads che vuoi utilizzare. Per i nuovi progetti, ti consigliamo di utilizzare l'opzione Fino alla prossima versione principale.
CocoaPods
Prima di continuare, consulta la sezione Utilizzo di CocoaPods per informazioni sulla creazione e l'utilizzo dei Podfile.
Per utilizzare CocoaPods, segui questi passaggi:
Apri il Podfile del progetto e aggiungi questa riga alla configurazione di build
target
dell'app:pod 'Google-Mobile-Ads-SDK'
In un terminale, esegui:
pod install --repo-update
Download manuale
Scarica l'SDK Google Mobile Ads e
Embed & Sign
i seguenti framework nel tuo progetto Xcode:GoogleMobileAds.xcframework
UserMessagingPlatform.xcframework
Nelle impostazioni di build del progetto:
- Aggiungi il percorso
/usr/lib/swift
a Runpath Search Paths. - Aggiungi il flag Linker
-ObjC
a Altri flag Linker.
- Aggiungi il percorso
Aggiorna il file Info.plist
Aggiorna il file Info.plist
dell'app per aggiungere due chiavi:
Una chiave
GADApplicationIdentifier
con un valore stringa del tuo ID app AdMob che si trova nell' interfaccia utente di AdMob.Una chiave
SKAdNetworkItems
con valoriSKAdNetworkIdentifier
per Google (cstr6suwn9.skadnetwork
) e acquirenti di terze parti selezionati che hanno fornito questi valori a Google.
Snippet completo
<key>GADApplicationIdentifier</key> <!-- Sample AdMob 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>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>
Sostituisci SAMPLE_APP_ID con l'ID app AdMob. Durante il test, utilizza l'ID app di esempio mostrato nell'esempio precedente.
Se non hai ancora creato un account AdMob e registrato un'app, questo è il momento giusto per farlo.
Inizializza l'SDK Mobile Ads
Prima di caricare gli annunci, chiama il metodo start()
su
GADMobileAds.sharedInstance
,
che inizializza l'SDK e richiama un gestore di completamento una volta
che l'inizializzazione è completata (o dopo un timeout di 30 secondi). Chiama start()
il prima possibile.
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];
Seleziona un formato dell'annuncio
L'SDK Mobile Ads è ora importato e inizializzato e puoi implementare un annuncio. AdMob offre diversi formati di annunci, in modo che tu possa scegliere quello più adatto all'esperienza utente della tua app.
Banner
Le unità pubblicitarie banner mostrano annunci rettangolari che occupano una porzione del layout dell'app. possono essere aggiornate automaticamente dopo un determinato periodo di tempo. Ciò significa che gli utenti vedono un nuovo annuncio a intervalli regolari, anche se rimangono sulla stessa schermata della tua app. Inoltre, questo è il formato dell'annuncio più facile da implementare.
Implementare gli annunci banner
Interstitial
Le unità pubblicitarie interstitial mostrano annunci a schermo intero nell'app. Posiziona gli annunci in un punto in cui nell'interfaccia dell'app si verifica una pausa naturale o una transizione, ad esempio dopo il completamento di un livello in un'app di gioco.
Implementare gli annunci interstitial
Nativo
Gli annunci nativi sono annunci in cui puoi personalizzare la modalità di presentazione degli asset, come titoli e inviti all'azione, nelle tue app. Se personalizzi lo stile dell'annuncio, puoi creare presentazioni pubblicitarie naturali e discrete che possono arricchire l'esperienza utente.
Implementare gli annunci nativi
Con premio
Le unità pubblicitarie con premio consentono agli utenti di giocare, partecipare a sondaggi o guardare video per vincere premi in-app come monete, vite extra o punti. Puoi impostare premi diversi per le varie unità pubblicitarie, specificare quelli che riceveranno gli utenti e il relativo valore.
Implementare gli annunci con premio
Interstitial con premio
L'interstitial con premio è un nuovo tipo di formato dell'annuncio con incentivi che ti consente di offrire premi, ad esempio monete o vite extra, per gli annunci che vengono visualizzati automaticamente durante le normali transizioni dell'app.
A differenza degli annunci con premio, gli utenti non devono attivare la visualizzazione di un annuncio interstitial con premio.
Invece della richiesta di attivazione degli annunci con premio, quelli interstitial con premio prevedono una schermata introduttiva che annuncia il premio e offre agli utenti la possibilità di disattivare l'annuncio.
Implementare gli annunci interstitial con premio
Apertura app
Apertura app è un formato dell'annuncio visualizzato quando gli utenti aprono la tua app o vi tornano. L'annuncio si sovrappone alla schermata di caricamento.
Implementa gli annunci apertura app