在 React Native SDK 的 Observer Mode 中上报交易
安装 AI Agent 工具
在你的 AI 编程工具中完成整个 Adapty SDK 集成。 了解更多
可安装到任何支持技能的 AI 工具。之后更新请运行 npx skills update。
安装后,在你的项目中运行该技能:
在 Observer 模式下,Adapty SDK 无法自动追踪通过您现有购买系统完成的购买。您需要从应用商店主动上报交易。为避免分析数据出现错误,务必在发布应用之前完成此配置。
使用 reportTransaction 显式上报每笔交易,以便 Adapty 识别。
不要跳过交易上报!
如果不调用 reportTransaction,Adapty 将无法识别该交易,它不会出现在分析数据中,也不会被发送到各集成渠道。
如果你使用 Adapty 流程和付费墙,在上报交易时请附带 variationId。这样可以将购买行为关联到触发它的流程或付费墙,确保分析数据的准确性。
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}参数:
| 参数 | 是否必填 | 描述 |
|---|---|---|
| transactionId | 必填 |
|
| variationId | 可选 | 实验变体的字符串标识符。可通过 AdaptyPaywall 对象的 variationId 属性获取。 |
在 Observer 模式下,Adapty SDK 无法自动追踪通过您现有购买系统完成的购买。您需要从应用商店上报或恢复交易。为避免分析数据出现错误,务必在发布应用之前完成此配置。
在两个平台上均使用 reportTransaction 显式上报每笔交易,并在 Android 上额外使用 restorePurchases,以确保 Adapty 能够识别该交易。
不要跳过交易上报! 如果不调用这些方法,Adapty 将无法识别该交易,它不会出现在分析数据中,也不会发送到集成渠道。
如果你使用 Adapty 流程和付费墙,请在上报交易时包含 variationId。这样可以将购买行为与触发它的流程或付费墙关联起来,从而确保分析数据的准确性。
if (Platform.OS === 'android') {
try {
await adapty.restorePurchases();
} catch (error) {
// handle the error
}
}
...
const variationId = paywall.variationId;
try {
await adapty.reportTransaction(transactionId, variationId);
} catch (error) {
// handle the `AdaptyError`
}参数说明:
| 参数 | 是否必填 | 描述 |
|---|---|---|
| transactionId | 必填 |
|
| variationId | 可选 | 实验变体的字符串标识符。可通过 AdaptyPaywall 对象的 variationId 属性获取。 |
上报交易
- 3.1.x 及以下版本会自动监听 App Store 中的交易,无需手动上报。
- 3.2 版本不支持 Observer 模式。
上报交易
在 Observer Mode 下,使用 restorePurchases 向 Adapty 报告交易,详情请参阅在移动端代码中恢复购买页面。
不要跳过交易报告!
如果不调用 restorePurchases,Adapty 将无法识别该交易,它不会出现在分析数据中,也不会被发送到集成系统。
将流程和付费墙关联到交易
Adapty SDK 无法确定购买来源,因为购买由您自行处理。因此,如果您打算在 Observer 模式下使用流程、付费墙和/或 A/B 测试,您需要在移动应用代码中将来自应用商店的交易与对应的流程或付费墙关联起来。在发布应用之前务必正确完成此操作,否则将导致分析数据出现错误。
const variationId = paywall.variationId;
try {
await adapty.setVariationId('transactionId', variationId);
} catch (error) {
// handle the `AdaptyError`
}Request parameters:
| 参数 | 是否必填 | 描述 |
|---|---|---|
| transactionId | 必填 | iOS,StoreKit 1:SKPaymentTransaction 对象。 iOS,StoreKit 2:Transaction 对象。 Android:字符串标识符(purchase.getOrderId,其中 purchase 是计费库 Purchase 类的实例)。 |
| variationId | 必填 | 实验变体的字符串标识符。可通过 AdaptyPaywall 对象的 variationId 属性获取。 |