Começar

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 continuar a implementar um ou mais dos formatos de anúncio compatíveis.

Pré-requisitos

  • Use o Xcode 13.2.1 ou uma versão mais recente
  • Segmentar iOS 10.0 ou posterior

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

CocoaPods (preferencial)

A maneira mais simples de importar o SDK para um projeto do iOS é usando 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ê é iniciante no 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 de anúncios para dispositivos móveis do Google em File > Add Packages....

  2. Na janela exibida, procure o repositório do GitHub para anúncios móveis para dispositivos móveis no GitHub:

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

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

  1. Faça o download do framework do SDK e descompacte-o diretamente e importe os seguintes frameworks no seu projeto do Xcode:

    • GoogleAppMeasurement.xcframework
    • GoogleAppMeasurementIdentitySupport.xcframework
    • GoogleMobileAds.xcframework
    • GoogleUtilities.xcframework
    • nanopb.xcframework
    • PromisesObjC.xcframework
    • UserMessagingPlatform.xcframework
  2. Adicione a sinalização do vinculador -ObjC a Outras sinalizações do vinculador nas configurações do build do seu projeto:

Atualizar seu Info.plist

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

  1. Uma chave GADApplicationIdentifier com um valor de string do seu Ad Manager ID do aplicativo (identificado na Ad Manager IU).
  2. Uma chave SKAdNetworkItems com valores SKAdNetworkIdentifier para o Google (cstr6suwn9.skadnetwork) e selecionar 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>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>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>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>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>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>ecpz2srf59.skadnetwork</string>
    </dict>
    <dict>
      <key>SKAdNetworkIdentifier</key>
      <string>uw77j35x4d.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>gta9lk7p23.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>

Para otimizar o desempenho da inicialização, é importante associar seus grupos de rendimento aos apps específicos em que eles são usados. As configurações do grupo de rendimento segmentadas para iOS e não associadas a nenhum app específico serão enviadas a todos os apps iOS na sua conta, possivelmente aumentando o tempo necessário para a inicialização.

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 é 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 quanto antes.

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. 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. Ad Manager oferece vários formatos de anúncios diferentes para que você possa escolher aquele que melhor se adapta à experiência do usuário no seu app.

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 app 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. É melhor usá-los em pausas naturais no fluxo de execução de um app, como entre níveis de um jogo ou logo após a conclusão de uma tarefa.

Implementar um intersticial

Nativo

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

O Google Ad Manager oferece duas maneiras de implementar anúncios nativos: estilos nativos e renderização personalizada.

Os estilos nativos foram criados para facilitar a implementação de anúncios nativos. Essa é uma ótima opção para quem está começando a usar o formato. A renderização personalizada foi criada para maximizar a liberdade de criação de apresentações.

Implementar estilos nativos Implementar a renderização personalizada

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)