Android应用架构设计(模块化和组件化)

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,各个业务层模块之间,不直接访问彼此的代码