需求:
参考:wifi管家,架构我们自己控制累应用。
(领导说话就这样,一句话剩下的是需求拆解)
需求分析:
- 首先wifi管家,分为三个内容板块,另加一个个人中心。
- (首页)第一个内容中心主要是:设备控制类/体验为主
- 第二个内容中心主要是:设备绑定,一键链接
- 第三个内容中心主要是:新闻咨询
- 首页右上角,是个人中心的入口
根据需求选择合适的开发框架
通过整体布局可以看到,整体可采用三个。 - 开发框架的选择:MVC MVP MVVM;MVC简单易上手、MVP MVVM比较绕不建议新手使用。
- 权衡是否使用开源的框架,还是自己写?开源的简单看懂文档就可以直接拿来用,可能有很多功能用不上。自己写建议用到什么写什么自己掌控。
这里我先尝试使用:使用之前建议现将代码demo熟悉过来
ThinkAndroid框架
项目地址:https://github.com/white-cat/ThinkAndroid
主要有以下模块:
(1) MVC模块:实现视图与模型的分离。
(2) ioc模块:android中的ioc模块,完全注解方式就可以进行UI绑定、res中的资源的读取、以及对象的初始化。
(3) 数据库模块:android中的orm框架,使用了线程池对sqlite进行操作。
(4) http模块:通过httpclient进行封装http数据请求,支持异步及同步方式加载。
(5) 缓存模块:通过简单的配置及设计可以很好的实现缓存,对缓存可以随意的配置
(6) 图片缓存模块:imageview加载图片的时候无需考虑图片加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象。
(7) 配置器模块:可以对简易的实现配对配置的操作,目前配置文件可以支持Preference、Properties对配置进行存取。
(8) 日志打印模块:可以较快的轻易的是实现日志打印,支持日志打印的扩展,目前支持对sdcard写入本地打印、以及控制台打印
(9) 下载器模块:可以简单的实现多线程下载、后台下载、断点续传、对下载进行控制、如开始、暂停、删除等等。
(10) 网络状态检测模块:当网络状态改变时,对其进行检
框架确定好了,根据需求依赖,看看有没有开源的库和动画与需求匹配(当然可能准备的最后用不上,哈哈哈)
NotBoringActionBar
项目地址:https://github.com/flavienlaurent/NotBoringActionBar
由于人力变动等,外力条件该项目暂时搁置。
再次启动时间无限期推迟。