前提
在依赖工程设置
android:name="com.qishui.zframelibrary.base.ZBaseApplication"
或者自定义的application继承ZBaseApplication;不然有些配置没用。
描述
AndroidManifest.xml
添加了一些常见权限
提供一个适配Android 7.0 uri的provider
配置改变glide照片质量和路径QualityModule
activity
CheckPermissionActivity 检测请求权限;只需继承此类,设置要请求权限即可。
设置需要权限
String[] needPermissions={Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.READ_EXTERNAL_STORAGE};
在onCreate方法
setNeedPermissions(needPermissions);
CrashActivity 全局异常处理
//默认方法
CrashUtils.getCrashUtils(this);
//自定义设置
CrashUtils.getCrashUtils(this).setCallBack(new CrashUtils.CallBack() {
@Override
public void handle() {
}
});
SeeBigPictureActivity 查看大图
调用方法即可,传入文件,照片地址等
toSeeBigPictureActivity(String picture)
TakePictureActivity 拍照
路径默认在SD卡下,参数 "/pic" ,"test.png"
takePicture(String picPath, String picName, CallBack callBack)
路径默认文件地址,名字
takePicture(CallBack callBack)
即拍完之后返回文件路径
adapter
CommonAdapter 用于listview gridview 适配器,简单快速。
TabFragmentPagerAdapter 用于tablayout 适配器
CommonPagerAdapter 用于viewpage 适配器
async
FileReadAsyncTask 读取文本数据异步处理
FileWirteAsyncTask 写日志文件异步处理
base
ZBaseActivity Activity的基类
实现设置屏幕竖直方向
抽象设置加载布局文件
适配,单位px
设置默认状态栏
实现抽象处理事件方法
带有退出程序,获取文本信息,提示,查看大图,跳转Activity等方法
ZBaseApplication 程序应用
获取主线程,Handle ,上下文 ,
设置适配基准,1920*1080,不计状态栏
初始化全局异常
OkHttp配置
ZBaseFragment
比较简单,抽象加载布局,处理事件
constant
AutoLayoutConstants 配置适配常数
ColorConstants 颜色常量
FileConstants.class 文件设置配置
public class FileConstants {
//总目录
public static final String DIR = "/multicheck";
//日志目录
public static final String DIR_LOG = DIR + "/log";
//全局异常目录
public static final String DIR_LOG_CRASH = DIR + "/crash";
//图片目录
public static final String DIR_PICTURE = DIR + "/picture";
//压缩图片
public static final String DIR_PICTURE_LUBAN = DIR + "/luban_picture";
//保存文件后缀设置
public static final String DIR_POSTFIX = ".log";
//拍照图片后缀
public static final String PICTURE_POSTFIX = ".png";
//glide缓存路径
public static final String DIR_GLIDE = DIR + "/glide";
//文件夹名字
public static final String DIR_GLIDE_NAME = "/cache";
//SharedPreferences保存文件在data/data/工程文件名/share_pres目录下
public static final String DIR_SP_NAME = "sp_data";
//acache缓存路径
public static final String DIR_ACACHE = DIR + "/acache";
//存取文件名字
public static final String DIR_ACACHE_NAME = "/acache_info";
}
GlideConstants.class 配置glide文件路径大小等
RegConstants.class 正则处理,目前有IP和port
diglog
CommonDialog.class 自定义常用对话框
ListDialog.class 列表对话框
ProgressDialog 圆形进度框
img
ImageLoader加载不同效果图片
ImageUtils鲁班压缩
netokhttp
OkHttpManager.class常见网络请求,get、post,文件上传,文件下载等,显示图片等;使用如下
/**
* 请求站点信息及验证ip和端口是否正确
*
* @param ip
* @param port
*/
private void request(final String ip, final String port) {
final ProgressDialog progressDialog = new ProgressDialog(this);
progressDialog.setDisplay(true);
Map<String, String> params = new HashMap<>();
params.put("ip", ip);
params.put("port", port);
OkHttpManager.get("http://www.baidu.com", params)
.execute(new StringCallBackResult("请求站点信息及验证ip和端口是否正确") {
@Override
public void onError(Call call, Exception e, int id) {
super.onError(call, e, id);
progressDialog.setDisplay(false);
}
@Override
public void onResponse(String response, int id) {
super.onResponse(response, id);
progressDialog.setDisplay(false);
String[] keys = {Keys.KEY_IP, Keys.KEY_PORT};
Object[] values = {ip, port};
SPUtils.putValues(keys, values);
startActivity(LoginActivity.class);
}
});
}
对于返回数据不同传入不同CallBack即可处理,都在UI线程中实现。默认实现日志记录打印功能!
util
ACacheUtils.class 缓存工具类
AutoLayoutUtils.class 适配,布局注意使用px为单位
CommonUtils.class
获取文本,判断是否json,添加虚拟按键,移动edittext光标,打电话,浏览器等
CrashUtils.class 异常处理
DateUtils.class 时间转换,格式常量
DensityUtils 单位换算
DesUtils des加密
FileProvider7 适配android7.0
FileUtils 文件处理
GsonUtils json处理
IOCloseUtils 关闭流
LogUtils 日志处理
file打印到文件上;e在调试输出。
MathUtils 数字处理及运算
MD5Utils MD5加密
NetworkUtils 网络状态及mac地址
SPUtils 保存基本设置,数据不宜过大
StatusBarUtil 状态栏处理
StringUtils 字符串处理
ThreadUtils 线程池处理
TimerUtils 计时器功能
ToastUtils 吐司提示
UiUtils 获取一些资源方法
view
ParticleView 启动页动画设置
CircleImageView 圆形图片
HeadView 标题栏
TabLayoutCustomView tab设置图标
具体使用参见综检联网处理