在开发过程中禁用Google Analytics

我的问题很简单:当应用程序使用debugging证书进行签名时,是否有任何方法可以自动禁用Google Analytics? 意味着它应该只在发布版本中才有效。 先谢谢你。

Solutions Collecting From Web of "在开发过程中禁用Google Analytics"

如果您使用的是ADT 17或更高版本,则可以使用BuildConfig类:

if(BuildConfig.DEBUG) { GoogleAnalytics googleAnalytics = GoogleAnalytics.getInstance(getApplicationContext()); googleAnalytics.setAppOptOut(true); } 

BuildConfig类是像R.java一样自动生成的。 它只包含DEBUG布尔值,在默认情况下设置为true ,在导出apk时为false

那么你可以设置它不够活跃:

 if (...) { GoogleAnalytics ga= GoogleAnalytics.getInstance(getApplicationContext()); ga.setAppOptOut(true); } 

我通常只是检查一些用于testing的已知设备的硬件序列号:

 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; } 

使用最新版本的Google Analytics,您应该使用以下代码:

 if(BuildConfig.DEBUG){ GoogleAnalytics.getInstance(this).setDryRun(true); }