标签:
本文从以下几个方面介绍框架:
1、框架的设计思路
2、这样设计的好处
3、框架的结构图
4、每个library的介绍
5、结合打包工具来使用
因为Android有Library(组件)的概念,也就是可以把许多的功能单独剥离成组件,需要的时候加入到项目中。所以,我们把独立的功能模块单独做成了一个一个的Library。如下图:
说明:Bbframework是框架的项目。BBModule_Plugin打头的,都是Library组件。
如果所有的功能都放置在同一个项目中,势必会造成apk包过大。组件插拔式的开发方式,让项目只会用到它需要的组件,这样可以保证app里面没有不需要的功能代码和资源。
每个不同的广告平台,我们都做成独立的组件,这样针对不同的渠道,可以灵活的替换不同的广告sdk。
每个Library都可以独立打包成jar引入到项目中。如果这个插件出问题,先撤下来开发,并不会影响到其他app的出包进度。
说明:虚线代表可插拔的。实现代表不可插拔。箭头的方向代表引用关系。从上图可知,Plugin_SystemJni这个Unative组件,是不可离开Bbframework的。
我们采用反射的思想来管理资源,使得打包的时候,可以不受R文件引用的困扰。每个library都会生成一个独立的jar包,供打包工具使用。
标签:
原文地址:http://www.cnblogs.com/superdo/p/4554436.html