En esta guía se describen los cambios que debes aplicar si quieres preparar tu aplicación para usar iOS 14.
Requisitos
- Tener la versión 7.64.0 o una posterior del SDK de anuncios de Google para móviles.
Habilitar SKAdNetwork para hacer un seguimiento de las conversiones
El Google Mobile Ads SDK es compatible con el seguimiento de conversiones mediante SKAdNetwork
de Apple, lo que significa que Google puede atribuir descargas de aplicaciones aunque el IDFA no esté disponible.
Para habilitar esta función, tendrás que actualizar la clave SKAdNetworkItems
con otro diccionario en tu archivo Info.plist
.
<key>SKAdNetworkItems</key> <array> <dict> <key>SKAdNetworkIdentifier</key> <string>cstr6suwn9.skadnetwork</string> </dict> </array>
Solicitar la autorización de App Tracking Transparency
Para mostrar la solicitud de autorización de App Tracking Transparency con el fin de acceder al IDFA, actualiza tu archivo Info.plist
para añadir la clave NSUserTrackingUsageDescription
con un mensaje personalizado que describa para qué vas a utilizarlo. A continuación, se muestra un ejemplo de descripción:
<key>NSUserTrackingUsageDescription</key> <string>This identifier will be used to deliver personalized ads to you.</string>
La descripción del uso aparece en el cuadro de diálogo de App Tracking Transparency, tal como se muestra en esta imagen:

Para mostrar la solicitud de autorización, llama a requestTrackingAuthorizationWithCompletionHandler:
.
Te recomendamos que esperes a la retrollamada de finalización antes de cargar anuncios, de modo que, si el usuario concede el permiso de App Tracking Transparency, el Google Mobile Ads SDK pueda utilizar el IDFA en las solicitudes de anuncios.
Swift
import AppTrackingTransparency import AdSupport ... func requestIDFA() { ATTrackingManager.requestTrackingAuthorization(completionHandler: { status in // Tracking authorization completed. Start loading ads here. // loadAd() }) }
Objective‑C
#import <AppTrackingTransparency/AppTrackingTransparency.h> #import <AdSupport/AdSupport.h> ... - (void)requestIDFA { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { // Tracking authorization completed. Start loading ads here. // [self loadAd]; }]; }
Para obtener más información sobre los posibles valores de estado, consulta ATTrackingManager.AuthorizationStatus
.