Android开发truck快速开发框架 常用工具集合(九)
2018-01-24 13:53
323 查看
简介
Android开发时间长了,所用到的工具类肯定也是越来越多,越来越杂。但是在所以在这里整理一下,说一下我平时都用到的工具集合,我主要给他们分为两类:一类是简单的静态类,固定逻辑,粘贴即用型,如:时间处理、权限处理、缓存、文件、媒体、加密等等。二类是需要自己深入研究,不断精简代码、优化速度,不断采坑,不断总结(当然也可以用别人写好的现成解决方案),如:GlideHelper、SQLHelper等。对于GlideHelper我坚持自己写,一、代码量不多,二、现成成熟的方案没有找到。对于SQLHelper我坚持自己写,主要处于两方面原因:一、了解熟悉SQL基本操作,这个无论在什么平台开发都是通用的,值得每一个程序员深入研究。二、我用过一些三方知名的工具,如Afinal。但是又时候遇到问题时真的是没有没有办法快速解决。我从来就不相信不要重复造轮子那样的话,这样的话是都是说给那些已经能轻而易举造出轮子的人听的。示例
对于上面讲的第一类的工具集合我这里就不做演示了,第一是因为太过简单,第二是内容太多。先谈谈GlideHelper的基本用法吧。GlideHelper可以异步加载图片,加载本地图片,基本使用如下:GlideHelper.load(defaultData.get(position).getResID(), holder.ivApproveLogo);加载网络图片,用法类似。加载圆形图片,用法如下:
GlideHelper.loadCircle(mData.get(position).getAvatar(), ivAvatar);加载圆角矩形图片,用法如下:
GlideHelper.loadRound(mData.get(position).getAvatar(), ivAvatar);以上为基本用法。高级用法可以设置Glide加载成功、失败站位符等、设置Glide加载动画、设置Glide加载进度监听等。
更多Glide高级功能参考truck项目中的Glide模块。
SQLHelper由于目前功能比较简单,只有创建、插入、查询。具体事例如下:
switch (view.getId()) { case R.id.tv_create_db: manager = new SQLManager(mContext, "yuedao", null, 1); break; case R.id.tv_create_table: Map<String, String> map = new HashMap(); map.put("id", "integer"); map.put("name", "varchar(20)"); map.put("phone", "varchar(20)"); map.put("address", "varchar(20)"); map.put("age", "integer"); manager.createTable("user1", map); break; case R.id.tv_write_data: DBBean bean = new DBBean(1, "袁冶", "1565654651", "重庆", 25); manager.insert("us1", bean); break; case R.id.tv_query_data: ArrayList<DBBean> list = manager.queryTableAll("us1", DBBean.class); ToastUtil.showShort(mContext, list.toString()); break; }
下面要介绍一个truck中实现模块化开发的核心工具类:RouterHelper。顾名思义,RouterHelper就是实现路由的核心部分,它只是对alibaba的ARouter做了一个简单的封装,他的作用在于能够实现moudle之间的通讯、moudle之间Activity的相互调用,有了它,才能实现真正的moudle于moudle之间的解耦,实现模块开发。
具体用法如下:
RouterHelper.from(mContext).to(UserRouter.loginUser);这里的UserRouter.loginUser为目标Activity的名称,设置如下:
@Route(path = "/user/view/login/ui/LoginActivity") public class LoginActivity extends FragmentActivity implements ISwipeBack { }path部分为目标Activity的名称,类型为String。使用RouterHelper,需要在对应的Gradle中做一下设置:
dependencies { annotationProcessor 'com.alibaba:arouter-compiler:1.1.4' compile project(':base')在defaultConfig中配置
//ARouter需要添加,如需使用,必须在对应module中添加以下代码 enforceUniquePackageName = false javaCompileOptions { annotationProcessorOptions { arguments = [moduleName: project.getName()] } }在Application中需要做ARouter的初始化操作。
快速开发
工具集合的目的是为了提高开发中的效率,为了更好、更快的开发。因为对truck里面的base模块有一定的熟悉。良好的分类、能达到事半功倍的效果。这里的工具集合,我还会一直不停的完善。最后附上truck快速开发交流qq群:698442320
相关文章推荐
- ANDROID 开发常用的框架、工具、API最全集合
- ANDROID 开发常用的框架、工具、API最全集合
- ANDROID 开发常用的框架、工具、API最全集合
- android mvp快速开发框架介绍(dileber使用之小工具使用)
- Android常用框架(快速开发)
- Android快速开发工具ButterKnife Zelezny注解框架使用教程
- ANDROID 开发常用的框架、工具、API
- Android 框架:快速开发中Util常用工具类总结
- NO.4 Android开发中常用框架及工具
- Android快速开发,十个最常用的框架
- Android快速开发,十个最常用的框架
- Android快速开发,十个最常用的框架
- android的快速开发框架集合
- android的快速开发框架集合
- Android常用的快速开发框架
- Android快速开发框架Android_BaseLib,集成了常用工具类,自定义View控件,Base基类封装,常用开源框架
- android mvp快速开发框架介绍(自动生成android代码工具介绍)
- 9款Android常用的快速开发框架
- Android快速开发系列 10个常用工具类
- Android快速开发集成框架 包含所有常用资源