我的问题很简单:是有当应用程序与调试证书签名的谷歌Analytics(分析)可以自动禁用任何方式? 意味着它应该只在发行版本是活动的。 先感谢您。
Answer 1:
如果您使用ADT 17岁以上,你可以利用BuildConfig类:
if(BuildConfig.DEBUG) {
GoogleAnalytics googleAnalytics = GoogleAnalytics.getInstance(getApplicationContext());
googleAnalytics.setAppOptOut(true);
}
所述BuildConfig
就像自动生成的类R.java
是。 它仅包含了DEBUG
布尔值,它被设置为true
默认,并false
,当你导出APK。
Answer 2:
那么你可以将其设置为不容易够活跃:
if (...) {
GoogleAnalytics ga= GoogleAnalytics.getInstance(getApplicationContext());
ga.setAppOptOut(true);
}
我通常只检查用于测试一些已知的设备的硬件序列号:
if (Arrays.asList("x", "y").contains(getHardwareSerial()))
凡getHardwareSerial()
是:
public static String getHardwareSerial() {
try {
Field serialField = Build.class.getDeclaredField("SERIAL");
return (String) serialField.get(null);
} catch (NoSuchFieldException nsf) {
} catch (IllegalAccessException ia) {
}
return Build.UNKNOWN;
}
Answer 3:
随着谷歌Analytics(分析)的最新版本,你应该使用下面的代码:
if(BuildConfig.DEBUG){
GoogleAnalytics.getInstance(this).setDryRun(true);
}
文章来源: Disable Google Analytics when in development