Empezar

Esta guía es para los editores que desean monetizar una aplicación de iOS con AdMob y no usan Firebase. Si planea incluir Firebase en su aplicación (o lo está considerando), consulte la versión de AdMob con Firebase de esta guía.

La integración del SDK de anuncios de Google para móviles en una aplicación es el primer paso para mostrar anuncios y obtener ingresos. Una vez que haya integrado el SDK, puede proceder a implementar uno o más de los formatos de anuncios admitidos .

requisitos previos

  • Usa Xcode 12 o superior
  • Objetivo iOS 10.0 o superior

Importar el SDK de anuncios para móviles

CocoaPods (preferido)

La forma más sencilla de importar el SDK a un proyecto de iOS es usar CocoaPods . Abra el Podfile de su proyecto y agregue esta línea al objetivo de su aplicación:

pod 'Google-Mobile-Ads-SDK'

Luego, desde la línea de comando, ejecute:

pod install --repo-update

Si es nuevo en CocoaPods, consulte su documentación oficial para obtener información sobre cómo crear y usar Podfiles.

Descargar manual

  1. Descargue y descomprima el marco SDK directamente e importe los siguientes marcos en su proyecto Xcode:

    • GoogleAppMeasurement.xcframework
    • GoogleAppMeasurementIdentitySupport.xcframework
    • GoogleMobileAds.xcframework
    • GoogleUtilities.xcframework
    • nanopb.xcframework
    • PromisesObjC.xcframework
    • UserMessagingPlatform.xcframework
  2. Agregue el indicador del vinculador -ObjC a Otros indicadores del vinculador en la configuración de compilación de su proyecto:

Actualiza tu Info.plist

Actualice el archivo Info.plist de su aplicación para agregar dos claves:

  1. Una clave GADApplicationIdentifier con un valor de cadena de su ID de aplicaciónAdMob ( identificado en la interfaz de usuarioAdMob ).
  2. Una clave SKAdNetworkItems con valores SKAdNetworkIdentifier para Google ( cstr6suwn9.skadnetwork ) y seleccione compradores adicionales que hayan proporcionado estos valores a 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>

Si aún no creó una cuenta de AdMob ni registró una aplicación , ahora es un buen momento para hacerlo.

Inicializar el SDK de anuncios para móviles

Antes de cargar anuncios, llame al método startWithCompletionHandler: en GADMobileAds.sharedInstance , que inicializa el SDK y vuelve a llamar a un controlador de finalización una vez que se completa la inicialización (o después de un tiempo de espera de 30 segundos). Esto solo debe hacerse una vez, idealmente al iniciar la aplicación. Debe llamar a startWithCompletionHandler: lo antes posible.

Aquí hay un ejemplo de cómo llamar al método startWithCompletionHandler: en su AppDelegate :

Ejemplo AppDelegate.m (extracto)

Rápido

import GoogleMobileAds

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  func application(_ application: UIApplication,
      didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    GADMobileAds.sharedInstance().start(completionHandler: nil)

    return true
  }

}

C objetivo

@import GoogleMobileAds;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

  [[GADMobileAds sharedInstance] startWithCompletionHandler:nil];
  return YES;
}

@end

Si está utilizando la mediación, es posible que desee esperar hasta que se llame al controlador de finalización antes de cargar anuncios, ya que esto garantizará que todos los adaptadores de mediación se inicialicen.

Seleccione un formato de anuncio

El SDK de Mobile Ads ahora está importado e inicializado, y está listo para implementar un anuncio. AdMob ofrece varios formatos de anuncios diferentes, por lo que puede elegir el que mejor se adapte a la experiencia del usuario de su aplicación.

Anuncios rectangulares que aparecen en la parte superior o inferior de la pantalla del dispositivo. Los anuncios publicitarios permanecen en la pantalla mientras los usuarios interactúan con la aplicación y pueden actualizarse automáticamente después de un cierto período de tiempo. Si es nuevo en la publicidad móvil, es un excelente lugar para comenzar.

Implementar una pancarta

intersticial

Anuncios a pantalla completa que cubren la interfaz de una aplicación hasta que el usuario la cierra. Se utilizan mejor en pausas naturales en el flujo de ejecución de una aplicación, como entre niveles de un juego o justo después de completar una tarea.

Implementar un intersticial

Nativo

Anuncios personalizables que coinciden con la apariencia de su aplicación. Usted decide cómo y dónde se colocan, por lo que el diseño es más consistente con el diseño de su aplicación.

Implementar Native Ads

recompensado

Anuncios que recompensan a los usuarios por mirar videos cortos e interactuar con encuestas y anuncios reproducibles. Bueno para monetizar a los usuarios de free-to-play.

Implementar anuncios recompensados Implementar anuncios recompensados ​​(nuevas API)