Iniciar

Este guia é destinado a editores que querem gerar receita com um app iOS com a AdMob e não estão usando o Firebase. Se você pretende incluir o Firebase no seu app ou estiver pensando em usá-lo, consulte a versão AdMob com o 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, será possível implementar um ou mais dos formatos de anúncio compatíveis.

Prerequisites

  • Usar o Xcode 13.2.1 ou mais recente
  • Segmentar o iOS 10.0 ou posterior

Importar o SDK de anúncios para dispositivos móveis

CocoaPods (preferencial)

A maneira mais simples de importar o SDK para um projeto 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 conhece o CocoaPods, consulte a documentação oficial (em inglês) 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.

  1. No Xcode, instale o pacote Swift dos anúncios para dispositivos móveis do Google navegando até File > Add Packages....

  2. Na solicitação exibida, pesquise o repositório do GitHub para pacote do Google Mobile Ads:

    https://github.com/googleads/swift-package-manager-google-mobile-ads.git
    
  3. Selecione a versão do pacote Swift dos anúncios para dispositivos móveis do Google que você quer usar. Para novos projetos, recomendamos usar a versão principal "Até a próxima".

Quando terminar, o Xcode começará a resolver as dependências do pacote e fará o download delas em segundo plano. Para mais detalhes sobre como adicionar dependências de pacote, consulte o artigo da Apple.

Download manual

  1. Faça o download do framework do SDK e descompacte-o 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
  2. Adicione a sinalização de vinculador -ObjC a Outras sinalizações do vinculador nas configurações de compilação do seu projeto:

Atualizar seu Info.plist

Atualize o arquivo Info.plist do seu app para adicionar duas chaves:

  1. Uma chave GADApplicationIdentifiercom um valor de string do seuAdMob ID de aplicativo (identificado na IUAdMob ).
  2. Uma chave SKAdNetworkItems com valores SKAdNetworkIdentifier para o Google (cstr6suwn9.skadnetwork) e selecionados outros compradores que forneceram esses valores ao Google.
<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>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>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>3sh42y64q3.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>prcb7njmu6.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>9rd848q2bz.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>n6fk4nfna4.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>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>av6w8kgt66.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>424m5254lk.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>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>3qcr597p9d.skadnetwork</string>
    </dict>
  </array>

Se você ainda não criou uma conta da AdMob e registrou um app, agora é um ótimo momento para fazer isso.

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 retorna um gerenciador de conclusão quando a inicialização for concluída (ou após um tempo limite de 30 segundos). Isso só precisa ser feito 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 seu 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, aguarde até que o gerenciador de conclusão seja chamado antes de carregar anúncios, porque isso garantirá que todos os adaptadores de mediação sejam inicializados.

Selecione um formato de anúncio

O SDK de anúncios para dispositivos móveis agora é importado e inicializado, e você está pronto para implementar um anúncio. AdMob Oferece vários formatos de anúncio diferentes. Assim, você pode escolher o formato mais adequado à experiência do usuário do seu aplicativo.

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, saiba que eles são um bom lugar para começar.

Implementar um banner

Intersticial

São anúncios de tela cheia que cobrem a interface de um aplicativo até serem fechados pelo usuário. Elas são melhor utilizadas em pausas naturais no fluxo de execução de um app, como entre as fases de um jogo ou logo após a conclusão de uma tarefa.

Implementar um intersticial

Nativo

Anúncios personalizáveis que combinam com a aparência e o tom do seu aplicativo. Você decide como e onde eles são colocados para que o layout seja mais consistente com o design do seu aplicativo.

Implementar Native Ads

Premiado

Anúncios que recompensam os usuários por assistir a vídeos curtos e interagir com pesquisas e anúncios jogáveis. São bons para gerar receita com usuários que acessam conteúdo sem custo financeiro.

Implementar anúncios premiados Implementar anúncios premiados (novas APIs)