从 Android 发布前报告中禁用 Google Analytics
Posted
技术标签:
【中文标题】从 Android 发布前报告中禁用 Google Analytics【英文标题】:Disable Google Analytics from Android pre-launch reports 【发布时间】:2016-09-26 12:46:07 【问题描述】:我已在 Google Play 开发者控制台上测试了新的发布前测试报告。虽然它很棒并且可以通过您的所有屏幕并对其进行测试,但它也会影响您在 Google Analytics 上的统计数据。
是否可以从 Google Analytics 中排除这些测试以及如何排除?
我知道我可以上传 APK 只是为了在禁用 GA 的情况下进行测试,但每次我都应该上传另一个启用 GA 的 APK 并打开和关闭发布前报告测试,这不是我想要的。
【问题讨论】:
【参考方案1】:在 Firebase 测试实验室中运行发布前报告。
根据他们的文档,您可以通过以下方式检测到您正在 Firebase 测试实验室中运行。
String testLabSetting = Settings.System.getString(context.getContentResolver(), "firebase.test.lab");
if ("true".equals(testLabSetting))
// Do something when running in Test Lab
来源:https://firebase.google.com/docs/test-lab/android-studio
【讨论】:
【参考方案2】:可以使用过滤器(管理 ›全局过滤器›编辑过滤器)排除统计信息。我发现可以使用将被 Google Analytics 统计数据排除的 IP、域或子域。
在我的项目中,我排除了我的 IP,因此我的开发和测试被排除在 Google Analytics 之外。我注意到,Firebase Analytics 应用了相同的过滤器。
【讨论】:
根据firebase.google.com/docs/test-lab/…的文档,测试设备当前使用的IP范围是108.177.6.0/23
。过滤所有以 108.177.6.
或 108.177.7.
开头的 IP 对我有用。【参考方案3】:
为了扩展@bleuf1shi 的答案,以下内容在 Xamarin 中对我有用。
var testLabSettings = Android.Provider.Settings.System.GetString(this.ContentResolver, "firebase.test.lab");
if ("true".Equals(testLabSettings, StringComparison.OrdinalIgnoreCase))
// Do something when running in Test Lab
【讨论】:
【参考方案4】:如果有人来到这里寻找如何使用 React Native 执行此操作,您可以通过 react-native-firebase 包 utils().isRunningInTestLab
:https://rnfirebase.io/app/utils#test-lab 确定应用程序是否在测试实验室中运行。
【讨论】:
这正是我想要的。非常感谢!【参考方案5】:我遇到了类似的问题。想要更改欢迎屏幕,以便所有按钮的行为类似于“接受使用条款”,否则在我的情况下,大约 66% 的测试以关闭应用程序结束。在标识发布前报告的环境中找不到任何内容。
我发现唯一可能的方法是确定测试运行的时间范围。当然,这并不可靠,但最后一次提交到 Google Play 总是需要至少 25 分钟才能更新。
发布前测试通常在提交新版本后不久开始。因此,当您能够并且愿意安排提交新版本的时间时,您可以使用当前时间来检测应用程序是否经过测试或在生产中使用。在提交时间 + 20 分钟后,启用生产模式。
希望 Google 为我们提供了一种可靠的方法来检测这种环境。服务很棒。不幸的是,由于权限问题,我看不到任何屏幕截图,但该服务仍处于测试阶段,因此将进行修复。
【讨论】:
以上是关于从 Android 发布前报告中禁用 Google Analytics的主要内容,如果未能解决你的问题,请参考以下文章
从 App Store 和 google Play Store 禁用 iOS 和 Android 应用程序,并向用户发送自定义消息