Android开发truck快速开发框架使用说明(一)
简介
不知不觉从事android开发也是有两年多了,说长不长,说短不短。由于本人从未在BAT那样的大公司工作,一直游走在二线城市的小公司之间,多以外包工作为主。开发方向飘忽不定,从应用层到硬件层都有所涉及,精通肯定是谈不上,但是为了要能在有限的
时间(外包工期真的紧)内完成产品开发,才有了这个truck快速开发框架。
truck快速开发框架积累了我这两年多的开发经验,从4个方面来提高快速开发的效率:
- base库的搭建。这个在开发框架中很常见的基础封装,减少代码量。
- 模块化构建项目。模块化开发的好处是可以多人开发,单独调试。由于模块之间的高度解耦,复用性高。
- Android Studio插件的应用。日常开发中插件的使用必不可少,能大量提高生产效率。
- Android Studio模板编写。和插件类似,大量重复性的代码都可以省略,专注于核心逻辑,提升代码质量。
当你第一次看到truck项目的时候肯定会特别奇怪,怎么这么多的东西,看起来好乱啊。这可能是你的第一想法。不要着急,静下心来,你能得到意想不到的收获。truck本身采用模块化设计,所以模块比较多,但是模块之间并没有什么耦合,所以,你完全可以删除所有模块,只留下一个base模块,当然,如果需要你也可以任意添加。truck项目之所以没有拆分为多个模块,是因为我精力有限,没有时间管理这么多的模块,所以平时都是统一管理。项目中有两个特殊的文件夹,一个是key、一个是template,key文件夹是存放项目前面文件的地方,默认加载的签名文件从key文件夹中加载。template为android
sutido模板文件夹,在后面会说到它的具体使用。
结构
首先,介绍一下truck框架base库的框架结构:
当你打开base库,第一眼开到的结构如上图,对于base,是开发中经常用的,所以base的更新会比较频繁,但是在真正项目中开发时,特别是多人开发,我建议大家固定base库版本。
工具公共库
工具公共库这里包含的东西比较多,基本结构如下:
- adapter包,主要是包含了BaseListAdapter(简化ListView,GridView的基本适配器)、RLVAdapter(简化RecyclerView适配器)、ExpandAdapter(基于RecyclerView的多级折叠适配器)。
- cache包,主要包含了内存缓存、磁盘缓存、SharePreference
- kit包,来源于开源项目XDroid中kit部分代码。扩展图片模糊、系统工具、
- log包,来源于开源项目XDroid中log部分。优化日志打印。
- other包,日常使用工具包集合。
- view包,常用且轻量级的自定义view。
数据库
数据库主要接口如下
- SqlHelper包,主要包含对SqlLite的增删查改基本操作。仅3个类,轻量级封装,易读已修改。
网络
网络部分结构如下
- OKHttp包,OKHttp包是基于OKHttp3.0做的简单封装,特点是,使用简单,请求过程清晰,易修改。
- retrofit包,采用retorfit2.0,简化retrofit使用,简单配置断线重连、缓存等。
- glide包,对glide的封装,支持圆形图片、原图加载、缓存设置等
路由
路由部分结构如下
- router包,使用路由方式来达到模块的快发中遇到的模块间的界面调用问题。
视图
视图结构如下
- base包,base包为truck中对Activity最基本的部分,也是使用最多的部分,这里的结构比较多,在后面模块中介绍。
- titlebar包,封装的titlebar,由于toolbar和actionbar有很多的局限性,所以采用自定义的titlebar。特点是使用方便,扩展性强。便于修改。
- dialog包,dialog主要分为两部分,一部分是集成各种系统dialog,提供简单的使用方法。第二部分,自定义Dialog,解决系统Dialog处理麻烦的部分。
最后附上truck快速开发交流qq群:698442320