欢迎参加我们将于 2022 年 10 月 18 日举办的 Firebase 峰会(线上线下同时进行),了解 Firebase 如何帮助您加快应用开发速度、满怀信心地发布应用并在之后需要时轻松地扩大应用规模。立即报名

Prise en charge d'iOS 14

Avec iOS 14.5, Apple exige que les développeurs reçoivent l'autorisation de l'utilisateur via le cadre App Tracking Transparency pour les suivre ou accéder à l'identifiant publicitaire de leur appareil (IDFA). Consultez la documentation d'Apple sur la confidentialité et l'utilisation des données de l'utilisateur et sur la transparence du suivi des applications d'Apple pour plus de détails.

Produits Firebase concernés

Les SDK Firebase n'accèdent pas à l'IDFA, bien que certains aient des intégrations avec Google Analytics qui peuvent impliquer un accès à l'IDFA.

Le tableau ci-dessous répertorie les produits Firebase disponibles sur les plates-formes Apple et décrit comment la fonctionnalité de chaque produit est affectée si l'IDFA n'est pas accessible.

Produit Impact si l'IDFA n'est pas accessible
Test A/B Certaines données de ciblage (comme les données démographiques) dans l'intégration des tests A/B avec Google Analytics sont dérivées de l'IDFA. Dans les applications sans accès à l'IDFA, ce ciblage n'est pas disponible.
Vérification de l'application Aucun impact
Distribution d'applications Aucun impact
Authentification Aucun impact sur les fournisseurs d'authentification et d'authentification propriétaires, tels que 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 en temps réel et des fils d'Ariane, ne dépend pas de l'IDFA.
Liens dynamiques 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 n'est pas disponible.
Cloud Firestore Aucun impact
Fonctions cloud Aucun impact
Messagerie intégrée à l'application Aucun impact
Installations Firebase Aucun impact
ID d'instance Aucun impact
Messagerie en nuage Lorsqu'il est utilisé avec Google Analytics, Google Analytics enregistre automatiquement certains événements de conversion liés à FCM. L'attribution de ces événements nécessite un accès IDFA.
Firebase ML Aucun impact
Suivi de la performance Aucun impact
Configuration à distance 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 IDFA.
Base de données en temps réel Aucun impact
Stockage en ligne 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 La journalisation des événements Analytics, les 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 cadre de transparence du suivi des applications 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 de demander l'autorisation. L'écran explicatif vous permet de donner aux utilisateurs plus de contexte 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 automatiquement l'obtention du consentement pour la diffusion de publicités personnalisées ainsi que le consentement pour le suivi de l'utilisateur conformément aux directives d'Apple. Consultez la page Consentement AdMob avec messagerie utilisateur pour plus de détails.

Le guide suivant fournit une solution utilisant Firebase In-App Messaging pour créer et afficher un écran explicatif avant de demander l'accès au suivi via App Tracking Transparency.

Ajoutez la messagerie intégrée à votre application

Suivez les instructions pour ajouter la messagerie intégrée à votre application Apple .

Gérer le rejet des messages dans l'application

Tout d'abord, évitez d'afficher l'écran explicatif sur les appareils qui ne peuvent pas afficher la boîte de dialogue de consentement, tels que les appareils exécutant iOS 13. Assurez-vous que ce code s'exécute immédiatement après FirebaseApp.configure() .

Rapide

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 explicatif. Si l'utilisateur appuie sur OK, affichez l'invite du système via le cadre App Tracking Transparency.

Rapide

// 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 de messagerie intégrée à l'application

Une fois le code en place dans votre application, créez un message intégré à l'application dans la console Firebase.

  1. Dans la console Firebase , créez une nouvelle campagne de messagerie intégrée à l'application.
  2. Remplissez les messages intégrés à l'application avec le contenu souhaité et définissez le message à déclencher sur l'événement app_launch .
  3. Dans la section Ciblage , assurez-vous que la campagne ne cible que la version la plus récente de votre application et au-dessus.

Vous pouvez personnaliser l'apparence de l'écran explicatif en suivant les instructions de la documentation de la messagerie intégrée à l'application .

Facultatif : test A/B de différents écrans explicatifs

La messagerie intégrée à l'application a une intégration intégrée avec Firebase A/B Testing , que vous pouvez utiliser pour expérimenter différents écrans explicatifs.

Firebase A/B Testing crée automatiquement des groupes de test et vous aide à visualiser comment les utilisateurs interagissent 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 de la réponse des autorisations de suivi des applications, vous devrez le faire pour mesurer les changements dans le taux de réponse lors de l'exécution d'une expérience A/B.

Rapide

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 nouvel événement de conversion

Dans la section Analytics de la console Firebase, accédez au menu Conversions , puis ajoutez un nouvel événement de conversion portant le même nom que l'événement consigné avec l'exemple de code ci-dessus.

Créer une nouvelle expérience

Dans le menu Messagerie intégrée à l'application de la console , cliquez sur Nouvelle expérience , puis suivez les instructions sur les écrans 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 au-dessus.
  • Dans la section Objectifs , sélectionnez l'événement de conversion que vous avez créé avec l'exemple de code ci-dessus ainsi que toute autre statistique que vous souhaitez suivre.

Une fois que vous avez publié votre expérience, celle-ci devra collecter des données pendant un certain temps avant de pouvoir produire des résultats concluants.

Lisez la documentation Firebase A/B Testing pour savoir comment surveiller une expérience et déployer une variante réussie.