设置与iOS App Store的对接。概要:收据验证可有效防止iOS或Android应用商店中的虚假应用内购买,并确保相关购买事件真实有效。请注意:本文为您介绍的是“历史版本”功能。如需了解最新的全自动增强型应用内购买验证机制,请参阅相关文档。
注意
- 本文介绍的历史版本不支持StoreKit v2。关于当前版本,详见设置与iOS App Store的对接。
- 第三方Android应用商店不支持应用内购买的收据验证。
收据验证流程
收据验证流程如下:
- 用户在应用内进行购买。
- 应用商店确认购买成功,并通知应用。
-
应用开发者调用SDK中的收据验证函数。
validateAndLogInAppPurchase
- SDK调用AppsFlyer验证服务。
- AppsFlyer判断该购买是否真实有效。
- 若验证通过,系统内部会自动生成一个标准的af_purchase事件;若验证失败,该事件将被标记为作弊行为(可在Protect360中查看)。
- AppsFlyer验证服务将结果返回给SDK。
-
SDK将验证结果(成功或失败)返回给应用。
如果收据验证失败,则该事件会显示在被拦截的应用内事件原始数据报告中(需购买Protect360)。
如需了解各平台的具体实现方式,请参见开发者SDK文档:
补充说明:
- 对于iOS沙盒应用(即尚未上线App Store的版本),在进行收据验证时需要额外添加部分代码。
- 沙盒环境下的购买行为也会被记录为标准的af_purchase事件,其收入数据也会在AppsFlyer面板及报告中显示。
- AppsFlyer的收据验证服务 对所有账户免费开放。
- 对于Android端应用,如果用户购买时没有连接网络,系统可能会返回
null
作为验证结果,将其视为验证失败。
重要提示!
调用validateAndLogInAppPurchase
时,系统会自动生成一个af_purchase应用内事件。因此,请勿在验证过程中手动生成该事件,以免收入数据重复。