应用内购买 (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 调用。本指南介绍了如何设置项目以进行自动跟踪,还介绍了一些需要添加几行代码才能实现的特殊情况。
准备工作
按照 Google Analytics 使用入门中所述设置您的 Firebase 项目和应用的代码库。
对于 Apple 平台应用:
- 确保您的应用使用的是 Analytics SDK v6.20.0 及更高版本。
对于 Android 应用:
- 确保您的应用使用的是 Analytics SDK v17.3.0 及更高版本(或 Firebase Android BoM v25.2.0 及更高版本)。
- 将 Firebase 应用关联到 Google Play。
如果您正在开发一款 Android 应用,可以在关联到 Google Play 后立即衡量应用内购买事件。本指南的其余部分重点介绍了 Apple 平台应用。
如果您是 Apple 开发者,请参阅 Apple 文档,确保您熟悉 Apple StoreKit 1 和 StoreKit 2 应用内购买 API。
实现
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 实现。
Kotlin+KTX
如需记录应用内购买事件,请关联到 Google Play。
Java
如需记录应用内购买事件,请关联到 Google Play。