JJEvent设计初衷为:一个统计SDK, 可以单独发布到仓库,单独被项目依赖而不产生冲突,拥有自己的数据存储,网络请求....expose曝光 事件
url 曝光url
ecp 自定义事件 ,json map存储....其他事件
支持自定义扩展
SDK抽象过程
面向对象语言的特点: 就是要面向对象编程,面向接口编程.当你在抽象的过程中,只关注某个对象是什么,然后他拥有什么属性,什么功能即可.不需要考虑其中的实现.这也就是...后期,在我们做自己的业务线的时候,大家也可以采用这种方法.
sdk生成,版本管理,混淆打包
自己在gradle中写了一个打包脚本,让打包的过程,自动化.详情见源码.
1task release_jj_analytics_lib_aar...**
2-keep class com.ccj.client.android.analytics.**{*;}
总结思考
在本sdk中,由于所有动作的生命周期,是全局周期,所以,选择了sdk持有applicatin