Avec iOS 14.5, Apple exige des développeurs qu'ils reçoivent l'autorisation de l'utilisateur via le framework App Tracking Transparency pour les suivre ou accéder l'identifiant publicitaire de votre appareil (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, même si certains sont intégrés avec Google Analytics qui peuvent impliquer l'accès à l'IDFA.
Le tableau ci-dessous liste les produits Firebase disponibles sur les plates-formes Apple et décrit l'impact sur les fonctionnalités de chaque produit si l'IDFA n'est pas accessibles.
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 sans l'accès à l'IDFA, ce ciblage n'est pas disponible. |
App Check | Aucun impact |
App Distribution | Aucun impact |
Authentication | Aucun impact pour Authentication et les fournisseurs Authentication propriétaires. comme Google Sign-In 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 | Aucun impact sur la fonctionnalité d'ouverture de lien. Lorsqu'il est utilisé avec Google Analytics, l'attribution pour les événements de conversion de lien est indisponible. |
Cloud Firestore | Aucun impact |
Cloud Functions | Aucun impact |
In-App Messaging | Aucun impact |
Installations Firebase | Aucun impact |
ID d'instance | Aucun impact |
Cloud Messaging | Lorsqu'il est utilisé avec Google Analytics, Google Analytics enregistrer automatiquement certains événements de conversion associés à FCM. Paternité pour ces événements nécessite un accès IDFA. |
Firebase ML | Aucun impact |
Performance Monitoring | Aucun impact |
Remote Config | Lorsqu'il est utilisé avec Google Analytics, Remote Config ne permet pas des propriétés utilisateur créées automatiquement pour le ciblage sans accéder à 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 | Journalisation des événements Analytics, création de rapports sur les événements et 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'échauffement ou d'explication avant demander l'autorisation. L'écran explicatif vous permet d'offrir aux utilisateurs plus 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 le recueil du consentement pour diffuser des publicités personnalisées, comme consentement pour suivre automatiquement l'utilisateur selon les consignes d'Apple. Consultez le Page AdMob concernant le consentement avec les messages destinés aux utilisateurs pour en savoir plus.
Le guide suivant fournit une solution reposant sur Firebase In-App Messaging pour créer et d'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 Ajoutez In-App Messaging à votre application Apple.
Gérer la fermeture des messages dans l'application
Tout d'abord, évitez d'afficher l'écran explicatif sur les appareils qui ne peuvent pas présenter
(sur les appareils équipés d'iOS 13, par exemple). 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
InAppMessagingDisplayDelegate
pour gérer les événements lorsque l'utilisateur ferme l'écran explicatif. Si le
l'utilisateur appuie sur "OK", puis affiche l'invite système via App Tracking Transparency
d'infrastructure.
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 inséré dans votre application, créez un message dans l'application dans le Console Firebase.
- Dans la console Firebase : créez une autre campagne In-App Messaging.
- Insérer le contenu souhaité dans les messages de l'application, puis définir le message
à déclencher lors de 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 explicatif en suivant les les instructions du Documentation sur 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 effectuer des tests avec différents écrans explicatifs.
Firebase A/B Testing crée automatiquement des groupes de test et vous aide de visualiser les interactions des utilisateurs avec les 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 du suivi d'application d'autorisations, vous devrez le faire afin de pouvoir mesurer les modifications apportées au 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 Section Analytics de la console Firebase, accédez au menu Conversions, puis ajoutez événement de conversion portant le même nom que l'événement consigné 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 les version récente ou ultérieure de votre application.
- Dans la section Objectifs, sélectionnez l'événement de conversion que vous avez créé avec la l'exemple de code ci-dessus, ainsi que toute autre métrique dont vous souhaitez effectuer le suivi.
Une fois publié, votre test doit collecter des données pour certaines avant de produire des résultats concluants.
Consultez les Documentation sur Firebase A/B Testing pour savoir comment contrôler un test et déployer une campagne variante d'origine.