Mesurer les achats via une application

Les achats via une application désignent des contenus ou fonctionnalités numériques que vous pouvez vendre dans une application mobile via Google Play ou l'App Store d'Apple. Cela évite d'effectuer des transactions financières dans votre application. Il peut s'agir, par exemple, de contenus vendus par abonnement ou de pièces spéciales dans un jeu.

Analytics : affiche les événements d'achat via une application dans le rapport "Achats via une application".

Pour les applications Android, le SDK Analytics s'intègre à Google Play. Pour les applications de la plate-forme Apple, le SDK s'intègre à l'App Store d'Apple à l'aide des API StoreKit 1 et StoreKit 2 d'Apple.

Dans la plupart des cas, le SDK Analytics collecte automatiquement les événements d'achats via l'application sans nécessiter d'appels d'API dans votre application. Sur iOS, vous pouvez également enregistrer manuellement les événements d'achats via l'application dans une WebView en plus des événements d'achats via l'application collectés automatiquement. Ce guide explique comment configurer votre projet pour le suivi automatique et décrit certains cas particuliers qui nécessitent quelques lignes de code pour être implémentés.

Avant de commencer

Applications Android

  • Assurez-vous que votre application utilise le SDK Analytics v17.3.0 ou version ultérieure (ou Firebase Android BoM v25.2.0 ou version ultérieure).

  • Associez vos applications Firebase à Google Play.

Applications de la plate-forme Apple

  • Assurez-vous d'utiliser le dernier SDK :

    • Pour le suivi automatique des achats via l'application : assurez-vous que votre application utilise le SDK Analytics 6.20.0 ou version ultérieure.

    • Pour le suivi manuel des achats via l'application : assurez-vous que votre application utilise le SDK Analytics 12.5.0 ou version ultérieure.

  • Assurez-vous de bien connaître les API d'achat via l'application Apple StoreKit 1 et StoreKit 2 en consultant la documentation Apple.

Implémentation

Dans la plupart des cas, le SDK Analytics enregistre automatiquement les événements liés aux achats via l'application sans nécessiter de code supplémentaire.

Implémentation dans les applications Android

Pour les applications Android, vous pouvez mesurer les événements d'achats via l'application dès que vous associez votre compte à Google Play.

Implémentation dans les applications de la plate-forme Apple

Pour les applications iOS, si vous utilisez StoreKit 1, le SDK Analytics enregistre automatiquement les événements d'achats via l'application. Si vous utilisez StoreKit 2, vous pouvez consigner les événements d'achats via l'application validés à l'aide de l'extrait de code ci-dessous.

Si vous devez suivre les achats via l'application effectués en dehors de l'App Store, vous pouvez également enregistrer manuellement les événements d'achats via l'application dans une WebView. Notez que le SDK continuera à enregistrer automatiquement les achats via l'application lorsque cela sera possible, et ne supprimera pas les doublons des événements in_app_purchase enregistrés manuellement. Assurez-vous d'utiliser le SDK Analytics v12.5.0 ou version ultérieure lorsque vous suivez manuellement les achats via l'application.

Swift

Si vous utilisez StoreKit 1, le SDK Analytics enregistre automatiquement les événements d'achats via l'application.

Si vous utilisez StoreKit 2, utilisez le code suivant pour consigner les événements d'achats via l'application.

import StoreKit
import FirebaseAnalytics

// A user tapped a button to purchase an item.
func userTappedPurchaseUpgradeButton() {
  let product = ...
  purchaseSomeProduct(product)
}

func purchaseSomeProduct(_ product: Product) {
  // Purchase a Product. This is mostly standard boilerplate StoreKit 2
  // code, except for the Analytics.logTransaction() call.
  let result = try await product.purchase()
  switch result {
  case .success(let verification):
      let transaction = try checkVerified(verification)

      // Call this Firebase API to log the in-app purchase event.
      Analytics.logTransaction(transaction)

      await transaction.finish()
  ...
}

Objective-C

Si vous utilisez StoreKit 1, le SDK Analytics enregistre automatiquement les événements d'achats via l'application.

StoreKit 2 est uniquement disponible en Swift. Par conséquent, l'implémentation Objective-C n'est pas prise en charge.