应用内购买 (IAP) 是可以通过 Google Play 或 Apple App Store 在移动应用中销售的数字内容或功能,这样您的应用就无需处理财务交易。应用内购买的示例包括订阅内容和特殊的游戏棋子。
Analytics 在应用内购买报告中显示应用内购买事件。
对于 Android 应用,Analytics SDK 与 Google Play 集成。对于 Apple 平台应用,该 SDK 使用 Apple 的 StoreKit 1 和 StoreKit 2 API 与 Apple App Store 集成。
在大多数情况下,Analytics SDK 会自动收集应用内购买事件,而无需在应用中进行 API 调用。在 iOS 上,除了自动收集的应用内购买事件之外,您还可以在 WebView 中手动记录应用内购买事件。本指南介绍了如何设置项目以进行自动跟踪,还介绍了一些需要添加几行代码才能实现的特殊情况。
准备工作
按照 Google Analytics 使用入门中所述设置您的 Firebase 项目和应用的代码库。
Android 应用
确保您的应用使用的是 Analytics SDK v17.3.0 及更高版本(或 Firebase Android BoM v25.2.0 及更高版本)。
Apple 平台应用
确保您使用的是最新的 SDK:
对于自动应用内购买跟踪:确保您的应用使用的是 Analytics SDK v6.20.0 及更高版本。
对于手动应用内购买跟踪:请确保您的应用使用的是 Analytics SDK v12.5.0 及更高版本。
请参阅 Apple 文档,确保您熟悉 Apple StoreKit 1 和 StoreKit 2 应用内购买 API。
实现
在大多数情况下,Analytics SDK 会自动记录应用内购买事件,而无需添加其他代码。
在 Android 应用中实现
对于 Android 应用,您可以在关联到 Google Play 后立即衡量应用内购买事件。
在 Apple 平台应用中实现
对于 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 实现。