Android:有没有办法在运行时识别测试购买?

时间:2016-09-13 11:23:30

标签: android in-app-purchase firebase-analytics

根据这个 https://support.google.com/firebase/answer/6317485?hl=en 当用户完成应用内购买时,系统会自动跟踪 in_app_purchase 事件。

测试用户出现问题。 他们不收费(因为他们是在#34;测试帐户和#34;谷歌开发者控制台中的列表中输入的),但也会跟踪 in_app_purchase 事件。 因此,分析与实际支付之间存在差异。

有没有办法以某种方式分开真实和'测试'购买?

或者,也许是一种禁用自动跟踪某些事件并手动发送的方法?以及如何识别'测试'在这种情况下在运行时购买(为了不发送 in_app_purchase 事件)

1 个答案:

答案 0 :(得分:2)

我知道有点晚了,但是在这里放2美分:

我想您可能已经知道,Firebase Analytics中Android的测试购买已经占到了,如here(请参阅in_app_purchases),“注意:付费应用购买收入,订阅收入(仅适用于Android)和不会自动跟踪退款。您报告的收入可能与您在Google Play开发者控制台中看到的值有所不同。标记为无效或沙盒(测试)的事件将被忽略。只有iOS事件被标记为沙盒”。

也就是说,没有一种方法可以在运行时识别此类购买,并避免针对Android报告这些购买并填充您的商品应用数据。但是,目前只有几种方法可以解决(我认为):

  1. 将产品数据与测试数据分离:研究如何document,了解如何在Firebase中设置单独的应用程序来记录您的测试数据。
  2. 禁用测试应用程序的分析收集:如图here所示,您可以临时或永久禁用Firebase Analytics数据收集。它包括可以在运行时禁用和启用它的选项。

尽管如此,考虑到您的情况,我认为选项#2有点违反直觉,而是选择#1。

在运行时禁用将测试购买数据报告给Google Analytics(分析)需要做两件事:

  1. 有关Google Play系统如何识别测试购买的知识,针对此类事件从用户设备发送的事件以及识别/拦截该事件的能力。
  2. 防止在运行时将事件报告给Firebase Analytics的选项。

在这种情况下,目前看来#2似乎不是一个选项。因此,我们在这里所能做的就是与Firebase支持联系并请求该功能。但是直到那时,我还没有看到其他方式。但是我很好奇,愿意接受别人提出的建议。 :)