神策的gradle插件每次运行大概要用掉2分钟时间, 对构建时间影响特别大. 我们可以在运行项目的时候禁用的神策的插件
gradle.properties下增加一行sensorsAnalytics.disablePlugin=false
在引用神策插件之前增加代码
project.'sensorsAnalytics.disablePlugin' = needDisableSensorAnalytics().toString()
apply plugin: 'com.sensorsdata.analytics.android'
boolean needDisableSensorAnalytics() {
// 判断是否传了keystore的密码, 打包时这个值不为空
return gradle.startParameter.projectProperties.get("android.injected.signing.store.password") == null
}
运行时参数里是没有android.injected.signing.store.password
这个值的
补充一个坑
打了线上包发现没有打点, 原因可能是神策这种动态修改开启关闭插件的时候, 会错误的记录缓存状态, 打release包的时候没干活..
解决方法也很简单, 打release包的时候clean一下, 不要run直接打包就可以
我本地神策的版本: 3.4.7
网友评论