衡量应用内购买

选择平台: iOS+ Android

应用内购买 (IAP) 是可以通过 Apple App Store 在移动应用中销售的数字内容或功能,这样您的应用就无需处理财务交易。应用内购买的示例包括订阅内容和特殊的游戏棋子。

Analytics应用内购买报告中显示应用内购买事件。

对于 Apple 平台应用,该 SDK 使用 Apple 的 StoreKit 1 和 StoreKit 2 API 与 Apple App Store 集成。

在大多数情况下,Analytics SDK 会自动收集应用内购买事件,而无需在应用中进行 API 调用。在 iOS 上,除了自动收集的应用内购买事件之外,您还可以在 WebView 中手动记录应用内购买事件。本指南介绍了如何设置项目以进行自动跟踪,还介绍了一些需要添加几行代码才能实现的特殊情况。

须知事项

实现

在大多数情况下,Analytics SDK 会自动记录应用内购买事件,而无需添加其他代码。

对于 iOS 应用,如果您使用的是 StoreKit 1,则 Analytics SDK 会自动记录应用内购买事件。如果您使用的是 StoreKit 2,可以使用以下代码段记录经过验证的应用内购买事件。

或者,如果您需要跟踪在应用商店之外进行的应用内购买,可以在 WebView 中手动记录应用内购买事件。请注意,SDK 将继续尽可能自动记录应用内购买交易,并且不会对任何手动记录的应用内购买交易事件进行去重。 确保您在手动跟踪应用内购交易时使用的是 Analytics SDK v12.5.0 及更高版本。

Swift

如果您使用的是 StoreKit 1,则 Analytics SDK 会自动记录应用内购买事件。

如果您使用的是 StoreKit 2,请使用以下代码记录应用内购买事件。

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

如果您使用的是 StoreKit 1,则 Analytics SDK 会自动记录应用内购买事件。

StoreKit 2 仅适用于 Swift,因此不支持 Objective-C 实现。