Android应用架构设计(模块化和组件化)
Android开发应用架构设计模块化组件化
app
app_01 A版 【包名:com.公司名.项目名.版本名】
app_02 B版 【包名:com.公司名.项目名.版本名】
app_03 C版 【包名:com.公司名.项目名.版本名】
app 通过配置,三个版本可以合成一个app使用,或者作为单元测试app【包名:com.公司名.项目名.版本名】
lib
lib_base 基本依赖,工具类 【包名:com.个人名.base】
lib_views 自定义view、组件 【包名:com.个人名.views】
lib_res 公共资源(样式、颜色、声音等) 【包名:com.公司名.res】
lib_https 公共请求,Retrofit+RxJava+OkHttp+MVP 【包名:com.个人名.https】
功能模块
module
module_base BaseActivity,BaseFragment等基本类,路由控制器的控制跳转,EventBus的模型
module_web web混编模块
module_pic 图片浏览模块
module_takephoto 自定义拍照模块
module_video 视频录制与视频压缩模块
module_map 应用地图显示模块
module_position 应用定位服务模块
...
业务模块
content
content_login 登录注册模块 【包名:com.公司名.模块名】
content_home 首页模块
content_goods 商品模块
content_order 订单模块
content_user 用户模块
...
跳转路由:Alibaba-ARouter,页面路由框架
模块间通信:EventBus,各个业务层模块之间,不直接访问彼此的代码