Começar

A integração do SDK dos anúncios para dispositivos móveis do Google em um app é a primeira etapa exibir anúncios e gerar receita. Depois de integrar o SDK, será possível prossiga com a implementação de um ou mais dos formatos de anúncio compatíveis.

Pré-requisitos

  • Usar o Xcode 15.3 ou uma versão mais recente
  • Segmentar o iOS 12.0 ou uma versão mais recente

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

Use um dos métodos a seguir para importar o SDK dos anúncios para dispositivos móveis do Google.

CocoaPods (preferencial)

A maneira mais simples de importar o SDK para um projeto iOS é usar CocoaPods Abrir 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ê ainda não conhece o CocoaPods, consulte a documentação oficial para mais 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 pacote Swift Manager a partir da versão 9.0.0. Siga estas etapas para importar o pacote Swift:

  1. No Xcode, instale o pacote Swift dos anúncios para dispositivos móveis do Google acessando Arquivo > Adicionar pacotes...

  2. Na solicitação exibida, pesquise o pacote Swift dos anúncios para dispositivos móveis do Google. Repositório do GitHub:

    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 Próxima versão principal.

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

Download manual

  1. Faça o download do SDK dos anúncios para dispositivos móveis do Google. e Embed & Sign inclua os seguintes frameworks no projeto Xcode:

    • GoogleMobileAds.xcframework
    • UserMessagingPlatform.xcframework
  2. Adicione a sinalização -ObjC do vinculador a Outras sinalizações do vinculador no configurações de build:

Atualizar o 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 app ID found in the Ad Manager UI and of the form ca-app-pub-################~##########.

  2. Uma chave SKAdNetworkItems com valores SKAdNetworkIdentifier para o Google (cstr6suwn9.skadnetwork) e compradores terceirizados selecionados 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>

Para um desempenho de inicialização ideal, é importante associar seu rendimento grupos com os aplicativos específicos em que são usados. Configurações do grupo de rendimento segmentados para iOS e não associados a um aplicativo específico serão enviados para todas as versões do iOS aplicativos na sua conta, o que pode aumentar o tempo de inicialização.

Em um aplicativo real, substitua o ID do aplicativo de exemplo pelo seu código real Ad Manager ID do app. Use o ID de amostra se: estiver apenas testando o SDK em um app Hello World.

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

Antes de carregar os anúncios, chame o método startWithCompletionHandler: no GADMobileAds.sharedInstance, que inicializa o SDK e chama um gerenciador de conclusão uma vez inicialização seja 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. Ligar para startWithCompletionHandler: o mais cedo possível.

Confira um exemplo de como chamar o método startWithCompletionHandler: na seu AppDelegate:

Exemplo de AppDelegate (trecho)

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

Selecione um formato de anúncio

O SDK dos anúncios para dispositivos móveis foi importado e inicializado, e você está pronto para implementar um anúncio. Ad Manager oferece várias formatos de anúncios diferentes para que você possa escolher o que melhor se adapta ao usuário do seu aplicativo do usuário.

Para desenvolvedores da SwiftUI, siga nosso SwiftUI guia.

Os blocos de anúncios de banner exibem anúncios retangulares que ocupam uma parte do espaço o mesmo layout organizacional. Eles podem ser atualizados automaticamente após um determinado período. Isso significa os usuários visualizam um novo anúncio em intervalos regulares, mesmo que permaneçam na mesma tela no seu app. Eles também são o formato de anúncio mais simples de implementar.

Implementar anúncios de banner

Intersticial

Os blocos de anúncios intersticiais exibem anúncios de página inteira no seu app. Coloque-as em um lugar pausas e transições na interface do app, como após a conclusão de um nível em um aplicativo de jogo.

Implementar anúncios intersticiais

Nativo

Os anúncios nativos são onde você pode personalizar a forma como os recursos, como títulos e calls-to-action são apresentadas nos seus apps. Ao criar o estilo do anúncio, é possível criam apresentações de anúncios naturais e discretas que podem agregar ainda mais valor para o usuário do usuário.

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

Os estilos nativos foram criados para simplificar a implementação de anúncios nativos. e é uma ótima opção se você é novo no formato. A renderização personalizada projetada para maximizar a liberdade que você tem na criação de suas apresentações.

Implementar estilos nativos Implementar anúncios nativos (renderização personalizada)

Premiado

Com os blocos de anúncios premiados, os usuários podem jogar, responder a pesquisas ou assistir a vídeos para ganhar recompensas no app, como moedas, vidas extras ou pontos; Você pode definir prêmios diferentes para blocos de anúncios diferentes e especifica os valores do prêmio e itens que o usuário recebeu.

Implementar anúncios premiados

Intersticial premiado

O intersticial premiado é um novo tipo de formato de anúncio incentivado que permite Ofereça recompensas, como moedas ou vidas extras, por anúncios que aparecem automaticamente durante transições naturais do app.

Ao contrário dos anúncios premiados, os usuários não precisam ativar essa opção para ver um anúncio premiado. intersticial.

Em vez da solicitação de permissão em anúncios premiados, os intersticiais premiados exigem uma mensagem tela inicial que anuncia o prêmio e dá aos usuários a chance de recusar se: querem fazer isso.

Implementar anúncios intersticiais premiados

Abertura do app

O anúncio de abertura do app é um formato que aparece quando os usuários abrem ou voltam para sua app. O anúncio se sobrepõe à tela de carregamento.

Implementar anúncios de abertura do app