写点什么

Android 开源框架(整理)

用户头像
Android架构
关注
发布于: 2021 年 11 月 07 日

值得进攻源码的几款 android 开源框架!!!


1、volley?项目地址 https://github.com/smanikandan14/Volley-demo


(1)? JSON,图像等的异步下载;


(2)? 网络请求的排序(scheduling)


(3)? 网络请求的优先级处理


(4)? 缓存


(5)? 多级别取消请求


(6)? 和 Activity 和生命周期的联动(Activity 结束时同时取消所有网络请求)


2、android-async-http??项目地址:https://github.com/loopj/android-async-http


文档介绍:http://loopj.com/android-async-http/?


(1) 在匿名回调中处理请求结果


(2) 在 UI 线程外进行 http 请求


(3) 文件断点上传


(4) 智能重试


(5) 默认 gzip 压缩


(6) 支持解析成 Json 格式


(7) 可将 Cookies 持久化到 SharedPreferences


**3、Afinal 框架


**项目地址:https://github.com/yangfuhai/afinal


主要有四大模块:


(1) 数据库模块:android 中的 orm 框架,使用了线程池对 sqlite 进行操作。


(2) 注解模块:android 中的 ioc 框架,完全注解方式就可以进行 UI 绑定和事件绑定。无需 findViewById 和 setClickListener 等。


(3) 网络模块:通过 httpclient 进行封装 http 数据请求,支持 ajax 方式加载,支持下载、上传文件功能。


(4) 图片缓存模块:通过 FinalBitmap,imageview 加载 bitmap 的时候无需考虑 bitmap 加载过程中出现的 oom 和 android 容器快速滑动时候出现的图片错位等现象。


FinalBitmap 可以配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等。FinalBitmap 的内存管理使用 lru 算法,


没有使用弱引用(android2.3 以后 google 已经不建议使用弱引用,android2.3 后强行回收软引用和弱引用,详情查看 android 官方文档),


更好的管理 bitmap 内存。FinalBitmap 可以自定义下载器,用来扩展其他协议显示网络图片,比如 ftp 等。同时可以自定义 bitmap 显示器,


在 imageview 显示图片的时候播放动画等(默认是渐变动画显示)。


**4、xUtils 框架


**项目地址:https://gith


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


ub.com/wyouflf/xUtils


主要有四大模块:


(1) 数据库模块:android 中的 orm 框架,一行代码就可以进行增删改查;


支持事务,默认关闭;


可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL 约束,CHECK 约束等(需要混淆的时候请注解表名和列名);


支持绑定外键,保存实体时外键关联实体自动保存或更新;


自动加载外键关联实体,支持延时加载;


支持链式表达查询,更直观的查询语义,参考下面的介绍或 sample 中的例子。??????????


(2) 注解模块:android 中的 ioc 框架,完全注解方式就可以进行 UI,资源和事件绑定;


新的事件绑定方式,使用混淆工具混淆后仍可正常工作;


目前支持常用的 20 种事件绑定,参见 ViewCommonEventListener 类和包 com.lidroid.xutils.view.annotation.event。


(3) 网络模块:支持同步,异步方式的请求;


支持大文件上传,上传大文件不会 oom;


支持 GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT 请求;


下载支持 301/302 重定向,支持设置是否根据 Content-Disposition 重命名下载的文件;


返回文本内容的请求(默认只启用了 GET 请求)支持缓存,可设置默认过期时间和针对当前请求的过期时间。????????????


(4) 图片缓存模块:加载 bitmap 的时候无需考虑 bitmap 加载过程中出现的 oom 和 android 容器快速滑动时候出现的图片错位等现象;


支持加载网络图片和本地图片;


内存管理使用 lru 算法,更好的管理 bitmap 内存;


可配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等...


**5、ThinkAndroid

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
Android开源框架(整理)