Google Analytics V4 setDryRun(true) 在 Amazon Fire 中不起作用 Phone

Google Analytics V4 setDryRun(true) doesn't work in Amazon Fire Phone

我想在应用 运行 处于调试模式时禁用记录 Google Analytics (GA) 事件。所以,我实施了以下内容:

if (BuildConfig.DEBUG) {
    //Disables reporting when app runs on debug
    GoogleAnalytics.getInstance(context).setDryRun(true);
}

它适用于我测试的每个 "Google" Android phone(即,在调试应用程序时不报告事件),但不适用于 Amazon Fire Phone(即 Fire Phone 仍在调试时报告事件 - 可能是因为它没有安装 Google Play 服务?)。

所有事件都已正确报告给 GA,因此 GA 总体上正在处理 Fire Phone- 但是,GoogleAnalytics.setDryRun(true) 没有任何影响。

此问题也已发布到 Google 分析的 Google 产品论坛: https://productforums.google.com/forum/#!topic/analytics/1zAmZCu1Bx4

这里是 Google 分析日志:

 V/GAV4﹕ Thread[main,5,main]: [Tracker] trackingId loaded: UA-XXXXXXXX
 V/GAV4﹕ Thread[main,5,main]: [Tracker] sample frequency loaded:
 W/GAV4﹕ Thread[main,5,main]: bool configuration name not recognized:  ga_dryRun
 W/GAV4﹕ Thread[main,5,main]: bool configuration name not recognized:  ga_dryRun

这里是开源项目:

https://github.com/OneBusAway/onebusaway-android

您似乎也在 xml 配置中设置了 ga_dryRun。从代码中设置 dry 运行 优先于 xml 配置。在您的代码片段中,您只在调试模式下设置 dry-运行 。尝试始终设置它:

GoogleAnalytics.getInstance(context).setDryRun(BuildConfig.DEBUG); //Disables reporting when app runs on debug

同时删除任何 XML 配置设置干燥 运行 模式。如果您要从代码中设置它,则不需要它(无论如何代码都会覆盖它)