Este guia é destinado a editores que querem gerar receita com um app para iOS com a AdMob e não usam o Firebase. Se você pretende incluir o Firebase no seu aplicativo (ou se estiver pensando em usá-lo), consulte a versão AdMob com Firebase deste guia.
Integrar o SDK dos anúncios para dispositivos móveis do Google a um app é o primeiro passo para exibir anúncios e gerar receita. Depois de integrar o SDK, você pode implementar um ou mais dos formatos de anúncio compatíveis.
Pré-requisitos
- Usar o Xcode 14.1 ou uma versão mais recente
- Segmentar o iOS 11.0 ou superior
- Recomendado: Crie uma conta da AdMob e registre um app.
Importar o SDK de anúncios para dispositivos móveis
CocoaPods (preferido)
A maneira mais simples de importar o SDK para um projeto do iOS é usar o CocoaPods. Abra o Podfile do projeto e adicione esta linha ao destino do app:
pod 'Google-Mobile-Ads-SDK'
Na linha de comando, execute:
pod install --repo-update
Se você não estiver familiarizado com o CocoaPods, consulte a documentação oficial para informações sobre como criar e usar Podfiles.
Gerenciador de pacotes do Swift
O SDK dos anúncios para dispositivos móveis do Google é compatível com o Swift Package Manager a partir da versão 9.0.0. Siga as etapas abaixo para importar o pacote do Swift.
No Xcode, instale o pacote Swift do Google Mobile Ads navegando para Arquivo > Adicionar pacotes....
Na solicitação exibida, procure o repositório GitHub dos anúncios para dispositivos móveis do Google para o GitHub:
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
Selecione a versão do pacote Swift dos anúncios para celular do Google que deseja usar. Para projetos novos, recomendamos usar a Versão principal seguinte.
Quando terminar, o Xcode vai começar a resolver as dependências do pacote e fazer o download delas em segundo plano. Para mais detalhes sobre como adicionar dependências de pacotes, consulte o artigo da Apple.
Download manual
Faça o download e descompacte o framework do SDK diretamente e importe os seguintes frameworks para seu projeto do Xcode:
GoogleAppMeasurement.xcframework
GoogleAppMeasurementIdentitySupport.xcframework
GoogleMobileAds.xcframework
GoogleUtilities.xcframework
nanopb.xcframework
PromisesObjC.xcframework
UserMessagingPlatform.xcframework
Adicione a sinalização do vinculador
-ObjC
a Outras sinalizações do vinculador nas configurações de versão do seu projeto:
Atualizar seu Info.plist
Atualize o arquivo Info.plist
do seu app para adicionar duas chaves:
Uma chave
GADApplicationIdentifier
com um valor de string de AdMob app ID found in the AdMob UI.Uma chave
SKAdNetworkItems
com valoresSKAdNetworkIdentifier
para o Google (cstr6suwn9.skadnetwork
) e alguns compradores de terceiros que forneceram esses valores ao Google.
Snippet completo
<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>
Este é o momento ideal para criar uma conta da AdMob ou registrar um app, caso ainda não tenha feito.
Inicializar o SDK de anúncios para dispositivos móveis
Antes de carregar anúncios, chame o método startWithCompletionHandler:
no GADMobileAds.sharedInstance
, que inicializa o SDK e chama um gerenciador de conclusão quando a inicialização é concluída (ou após um tempo limite de 30 segundos). Isso precisa ser feito apenas uma vez, de preferência na inicialização do app. Chame startWithCompletionHandler:
o mais cedo possível.
Veja um exemplo de como chamar o método startWithCompletionHandler:
no
AppDelegate
:
Exemplo de AppDelegate.m (trecho)
Swift
import GoogleMobileAds @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { GADMobileAds.sharedInstance().start(completionHandler: nil) return true } }
Objective-C
@import GoogleMobileAds; @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [GADMobileAds.sharedInstance startWithCompletionHandler:nil]; return YES; } @end
Se você estiver usando a mediação, espere até que o gerenciador de conclusão seja chamado antes de carregar anúncios, pois isso garantirá que todos os adaptadores de mediação sejam inicializados.
Selecione um formato de anúncio
Agora, o SDK de anúncios para dispositivos móveis é importado e inicializado, e você está pronto para implementar um anúncio.O AdMob oferece vários formatos de anúncio diferentes para que você possa escolher o que melhor se ajusta à experiência do usuário do seu aplicativo.
Banner
Anúncios retangulares que aparecem na parte superior ou inferior da tela do dispositivo. Os anúncios de banner permanecem na tela enquanto os usuários interagem com o aplicativo e podem ser atualizados automaticamente após um determinado período. Se você começou a usar os anúncios para dispositivos móveis agora, eles são um bom lugar para começar.
Intersticial
Anúncios em tela cheia que cobrem a interface de um aplicativo até serem fechados pelo usuário. Elas são mais úteis em pausas naturais no fluxo de execução de um app, como entre os níveis de um jogo ou logo após a conclusão de uma tarefa.
Nativo
São anúncios personalizáveis que combinam com a aparência do seu app. Você decide como e onde eles são posicionados. Assim, o layout fica mais consistente com o design do app.
Premiado
Anúncios que recompensam os usuários por assistir a vídeos curtos e interagir com pesquisas e anúncios jogáveis. Bom para gerar receita com usuários que acessam conteúdo sem custo financeiro.
Implementar anúncios premiados | Implementar anúncios premiados (novas APIs) |