Avec iOS 14.5, Apple exige que les développeurs obtiennent l'autorisation de l'utilisateur via le framework App Tracking Transparency pour le suivre ou accéder à son identifiant publicitaire (IDFA). Pour en savoir plus, consultez la documentation sur la confidentialité et l'utilisation des données des utilisateurs par Apple et sur la transparence des données de suivi des applications d'Apple.
Produits Firebase concernés
Les SDK Firebase n'accèdent pas à l'IDFA, bien que certains soient intégrés à Google Analytics, ce qui peut impliquer un accès à l'IDFA.
Le tableau ci-dessous liste les produits Firebase disponibles sur les plates-formes Apple et décrit l'impact de l'indisponibilité de l'IDFA sur les fonctionnalités de chaque produit.
Produit | Impact si l'IDFA n'est pas accessible |
---|---|
A/B Testing | Certaines données de ciblage (comme les données démographiques) de l'intégration A/B Testing avec Google Analytics sont dérivées de l'IDFA. Dans les applications qui n'ont pas accès à l'IDFA, ce ciblage n'est pas disponible. |
App Check | Aucun impact |
App Distribution | Aucun impact |
Authentication | Aucun impact sur les fournisseurs Authentication et Authentication propriétaires, tels que la connexion Google et l'authentification par téléphone. |
Crashlytics | Aucun impact. L'intégration de Crashlytics à Google Analytics, qui fournit des données de plantage et des breadcrumbs en temps réel, ne dépend pas de l'IDFA. |
Dynamic Links | Aucune incidence sur la fonctionnalité d'ouverture de liens. Lorsqu'il est utilisé avec Google Analytics, l'attribution des événements de conversion de lien n'est pas disponible. |
Cloud Firestore | Aucun impact |
Cloud Functions | Aucun impact |
In-App Messaging | Aucun impact |
Installations Firebase | Aucun impact |
InstanceID | Aucun impact |
Cloud Messaging | Lorsqu'il est utilisé avec Google Analytics, Google Analytics consigne automatiquement certains événements de conversion liés à FCM. L'attribution pour ces événements nécessite un accès à l'IDFA. |
Firebase ML | Aucun impact |
Performance Monitoring | Aucun impact |
Remote Config | Lorsqu'il est utilisé avec Google Analytics, Remote Config n'autorise pas les propriétés utilisateur créées automatiquement pour le ciblage sans accès à l'IDFA. |
Realtime Database | Aucun impact |
Cloud Storage | Aucun impact |
Vertex AI in Firebase | Aucun impact |
Intégrations Firebase concernées
Le tableau ci-dessous répertorie les produits intégrés à Firebase qui sont concernés si l'IDFA n'est pas accessible.
Produit | Impact si l'IDFA n'est pas accessible |
---|---|
Google Analytics | L'enregistrement des événements Analytics, la création de rapports sur les événements et la mesure des conversions ne sont pas affectés, mais l'attribution est affectée si l'IDFA n'est pas accessible. Pour en savoir plus sur la réponse de Google à iOS 14, consultez notre article de blog. |
Demander l'autorisation de suivi des applications sur iOS 14
Si vous souhaitez que votre application Apple puisse accéder à l'IDFA, vous pouvez ajouter le framework App Tracking Transparency d'Apple à votre application et demander l'autorisation de suivre ou d'accéder à l'IDFA de vos utilisateurs.
De nombreuses applications choisissent de présenter un écran d'explication avant de demander une autorisation. L'écran explicatif vous permet de fournir plus de contexte aux utilisateurs sur la façon dont votre application utilise l'IDFA avant de demander l'accès.
Si vous êtes un éditeur d'applications AdMob ou Ad Manager, envisagez d'utiliser Funding Choices, qui gère l'obtention du consentement pour la diffusion d'annonces personnalisées et le suivi de l'utilisateur automatiquement, conformément aux consignes d'Apple. Pour en savoir plus, consultez la page AdMob Consentement avec la messagerie utilisateur.
Le guide suivant fournit une solution à l'aide de Firebase In-App Messaging pour créer et afficher un écran explicatif avant de demander l'accès au suivi via App Tracking Transparency.
Ajouter In-App Messaging à votre application
Suivez les instructions pour ajouter In-App Messaging à votre application Apple.
Gérer le rejet des messages dans l'application
Tout d'abord, évitez d'afficher l'écran d'explication sur les appareils qui ne peuvent pas présenter la boîte de dialogue de consentement, comme les appareils exécutant iOS 13. Assurez-vous que ce code s'exécute immédiatement après FirebaseApp.configure()
.
Swift
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
Implémentez le protocole InAppMessagingDisplayDelegate
pour gérer les événements lorsque l'utilisateur ferme l'écran d'explication. Si l'utilisateur appuie sur "OK", affichez l'invite système via le framework App Tracking Transparency.
Swift
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
Créer une campagne In-App Messaging
Une fois le code installé dans votre application, créez un message dans l'application dans la console Firebase.
- Dans la console Firebase, créez une campagne In-App Messaging.
- Renseignez les messages dans l'application avec le contenu souhaité et définissez le message pour qu'il se déclenche sur l'événement
app_launch
. - Dans la section Ciblage, assurez-vous que la campagne ne cible que la version la plus récente de votre application et les versions ultérieures.
Vous pouvez personnaliser l'apparence de l'écran d'explication en suivant les instructions de la documentation In-App Messaging.
(Facultatif) Effectuer des tests A/B sur différents écrans d'explication
In-App Messaging est intégré à Firebase A/B Testing, que vous pouvez utiliser pour tester différents écrans d'explication.
Firebase A/B Testing crée automatiquement des groupes de test et vous aide à visualiser la façon dont les utilisateurs interagissent avec différentes variantes de votre application.
Enregistrer les autorisations de suivi des applications
Si vous n'avez pas enregistré d'événement Google Analytics lors de la gestion de la réponse aux autorisations de suivi des applications, vous devrez le faire pour mesurer les changements du taux de réponse lors de l'exécution d'un test A/B.
Swift
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
Créer un événement de conversion
Dans la section Analytics de la console Firebase, accédez au menu Conversions, puis ajoutez un événement de conversion portant le même nom que l'événement enregistré avec l'exemple de code ci-dessus.
Créer un test
Dans le menu In-App Messaging de la console, cliquez sur Nouveau test, puis suivez les instructions qui s'affichent.
- Dans la section Ciblage, assurez-vous que la campagne ne cible que la version la plus récente de votre application et les versions ultérieures.
- Dans la section Objectifs, sélectionnez l'événement de conversion que vous avez créé avec l'exemple de code ci-dessus, ainsi que toutes les autres métriques que vous souhaitez suivre.
Une fois votre test publié, il devra collecter des données pendant un certain temps avant de pouvoir produire des résultats concluants.
Consultez la documentation sur Firebase A/B Testing pour savoir comment surveiller un test et déployer une variante réussie.