为什么选择xUtils

来源:互联网 发布:win8系统改mac地址 编辑:程序博客网 时间:2024/05/17 01:56
 xUtils简介
* xUtils 包含了很多实用的android工具。
* xUtils 支持大文件上传,更全面的http请求协议支持(10种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响...
* xUitls 最低兼容android 2.2 (api level 8)


目前xUtils主要有四大模块:


* DbUtils模块:
  > * android中的orm框架,一行代码就可以进行增删改查;
  > * 支持事务,默认关闭;
  > * 可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL约束,CHECK约束等(需要混淆的时候请注解表名和列名);
  > * 支持绑定外键,保存实体时外键关联实体自动保存或更新;
  > * 自动加载外键关联实体,支持延时加载;
  > * 支持链式表达查询,更直观的查询语义


* ViewUtils模块:
  > * android中的ioc框架,完全注解方式就可以进行UI,资源和事件绑定;
  > * 新的事件绑定方式,使用混淆工具混淆后仍可正常工作;
  > * 目前支持常用的20种事件绑定,参见ViewCommonEventListener类和包com.lidroid.xutils.view.annotation.event。


* HttpUtils模块:
  > * 支持同步,异步方式的请求;
  > * 支持大文件上传,上传大文件不会oom;
  > * 支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT请求;
  > * 下载支持301/302重定向,支持设置是否根据Content-Disposition重命名下载的文件;
  > * 返回文本内容的请求(默认只启用了GET请求)支持缓存,可设置默认过期时间和针对当前请求的过期时间。


* BitmapUtils模块:
  > * 加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象;
  > * 支持加载网络图片和本地图片;
  > * 内存管理使用lru算法,更好的管理bitmap内存;
  > * 可配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等...




----
## 使用xUtils快速开发框架需要有以下权限:


```xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
```


----
## 混淆时注意事项:


 * 添加Android默认混淆配置${sdk.dir}/tools/proguard/proguard-android.txt
 * 不要混淆xUtils中的注解类型,添加混淆配置:-keep class * extends java.lang.annotation.Annotation { *; }
 * 对使用DbUtils模块持久化的实体类不要混淆,或者注解所有表和列名称@Table(name="xxx"),@Id(column="xxx"),@Column(column="xxx"),@Foreign(column="xxx",foreign="xxx");




百度上看了xUtils的介绍,知道它是基于Afinal改进的,大家评价还不错,所以选它应该没有错,我选择的版本是2.6.14.
0 0