Android常见开源解决方案

(一)系统框架

1.1 网络请求

名称描述
Android Async HTTPAndroid异步HTTP库
AndroidAsync异步Socket,HTTP(客户端+服务器),WebSocket,和socket.io库。基于NIO而不是线程。
OkHttp一个Http与Http/2的客户端
Retrofit类型安全的Http客户端
VolleyGoogle推出的Android异步网络请求框架和图片加载框架

1.2 网络解析

1.2.1 JSON解析

名称描述
Gson一个Java序列化/反序列化库,可以将JSON和java对象互相转换
JacksonJackson可以轻松地将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象
FastjsonJava上一个快速的JSON解析器/生成器

1.2.2 HTML解析

名称描述
HtmlPaser一种用来解析单个独立html或嵌套html的方式
Jsoup一个以最好的DOM,CSS和jQuery解析html的库

1.3 图片加载

名称描述
Android Universal Image Loader一个强大的加载,缓存,展示图片的库
Picasso一个强大的图片下载与缓存的库
Fresco一个用于管理图像和他们使用的内存的库
Glide一个图片加载和缓存的库

1.4 图片处理

名称描述
Picasso-transformations一个为Picasso提供多种图片变换的库
Glide-transformations一个为Glide提供多种图片变换的库
Android-gpuimage基于OpenGL的Android过滤器

1.5 图表处理

名称描述
WilliamChart创建图表的Android库
HelloCharts兼容到API8的Android图表库
MPAndroidChart一个强大的Android图表视图/图形库

1.6 后台处理

名称描述
Tape一个轻快的,事务性的,基于文件的FIFO的库
Android Priority Job Queue一个专门为Android轻松调度任务的工作队列

1.7 响应式编程

名称描述
RxJavaJVM上的响应式扩展
RxJavaJoins为RxJava提供Joins操作
RxAndroidAndroid上的响应式扩展,在RxJava基础上添加了Android线程调度
RxBinding提供用RxJava绑定Android UI的API
AgeraAndroid上的响应式编程

1.8 事件总线

名称描述
EventBus安卓优化的事件总线,简化了活动、片段、线程、服务等的通信
OTTO一个基于Guava的增强的事件总线

1.9 缓存

名称描述
DiskLruCacheJava实现基于LRU的磁盘缓存

1.10 数据库

名称描述
OrmLiteJDBC和Android的轻量级ORM java包
Sugar用超级简单的方法处理Android数据库
GreenDAO一种轻快地将对象映射到SQLite数据库的ORM解决方案
ActiveAndroid以活动记录方式为Android SQLite提供持久化
SQLBriteSQLiteOpenHelper 和ContentResolver的轻量级包装
Realm移动数据库,一个SQLite和ORM的替换品

1.11 依赖注入

名称描述
ButterKnife将Android视图和回调方法绑定到字段和方法上
Dagger2一个Android和java快速依赖注射器。
AndroidAnotations快速安卓开发。易于维护
RoboGuiceAndroid平台的Google Guice

1.12 Log框架

名称描述
Logger简单,漂亮,强大的Android日志工具
Hugo在调试版本上注解的触发方法进行日志记录
Timber一个小的,可扩展的日志工具

1.13 测试框架

名称描述
MockitoJava编写的Mocking单元测试框架
RobotiumAndroid UI 测试
RobolectricAndroid单元测试框架
Android自带很多测试工具JUnit,Monkeyrunner,UiAutomator,Espresso等

1.14 调试框架

名称描述
Stetho调试Android应用的桥梁,使得可以利用Chrome开发者工具进行调试

1.15 性能优化

名称描述
LeakCanary内存泄漏检测工具
ACRAAndroid应用程序崩溃报告

(二)控件库

2.1 下拉刷新、上拉加载

名称说明
Android PullToRefresh最经典、最多人用的下拉刷新、加载更多。
Android Ultra Pull To Refresh非常方便自定义的下拉刷新框架,继承于ViewGroup可以包含任何View,使用起来非常简单,如果想要自定义样式,就像给ListView加一个HeaderView一样简
Phoenix漂亮的动态刷新库
Pull-to-Refresh.Rentals-Android一个简单可以自定义的下拉刷新实现,Yalantis 出品。
Taurus下拉刷新,Yalantis 出品。(是不是有点似曾相识呢?)
swipeRefreshLayout谷歌官方自带

2.2 底部导航栏

名称说明
LuseenBottomNavigation很方便的遵循MD设计的底栏
ahbottomnavigation遵循谷歌设计规范的底栏库
BottomBar另一个遵循谷歌设计规范的底栏库(PS:之前我使用的时候有点小BUG现在不清楚)

2.3 二维码

名称说明
Zxing谷歌开发的二维码处理库,功能强大,质量没的说!一维码二维码都能扫!但是使用起来比较繁琐。
ZBarZBar则比较简单,使用起来容易上手

- ZXing项目的示例程序对于摄像头的控制写的非常全面,ZBar的没有

- ZBar基于C语言编写,解码效率高于ZXing项目

- ZBar是日本人写的,对于中文解析会乱码这个肯定有人遇到过的,ZXing不会乱码

- 扫描框的绘制,ZXing的扫描框绘制是自定义View的,截取区域不好控制(至少我没控制好),ZBar的可以自定义,只要你会计算截取区域

2.4 侧滑菜单

名称说明
NavigationDrawerMaterial Design的抽屉模板库,快速搭建侧滑菜单。
SlidingMenu之前也是个很优秀的侧滑库直到谷歌来搅局。。
FlowingDrawer超帅的侧滑菜单

2.5 侧滑返回

名称说明
ParallaxSwipeBack带视觉差的侧滑返回,类似于新版微信和lofter的侧滑返回效果。引入方便,核心代码只需几十行!

2.6 文本输入框

名称说明
MaterialEditText方便自定义的EditText控件库

2.7 侧贴标签

名称说明
labelview类似淘宝的侧贴标签库
FlycoLabelView轻量级侧贴标签

2.8 侧滑功能项

名称说明
AndroidSwipeLayout滑动Layout,支持单个View,ListView,GridView

2.9 动画库

名称说明
animate几乎涵盖所有MD动画
Material-AnimationsMD动画库
ExplosionField爆破效果的删除动画库
LoadingDrawable小清新的加载动画

2.10 搜索框

名称说明
floatingsearchview自带动画与动态加载数据的搜索框控件

2.11 快捷选择

名称说明
drag-select-recyclerview一直觉得魅族的快捷选择很有用,终于找到一个类似功能的还支持recycleView

2.12 引导页

名称说明
material-introMD风格的引导页
SlidingTutorial很顺滑的引导页
MaterialIntroViewMD式的高亮引导页
HTextView其实这是个帅炸的文字展示库,可是我用过做引导页而且逼格不错!

2.13 菜单

名称说明
android-snake-menu类似Tumblr的蛇形菜单
coolMenu帅炸的视窗菜单
BoomMenu爆炸式的弹出菜单

2.14 图案密码解锁单

名称说明
android-lockpatternAndroid开机的图案密码解锁,支付宝的密码解锁

2.15 滑动开关

名称说明
ToggleButton状态切换的 Button,类似 iOS,用 View 实现

2.16 对话框

名称说明
sweet-alert-dialog一个带动画效果的自定义对话框样式

2.17 进度条

名称说明
NumberProgressBar个简约性感的数字进度条
CircularProgressView自定义view的方式实现的Material风格的加载提示控件,兼容任何版本。

2.18 列表

名称说明
StickyListHeaders拼音字母悬停,GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView,支持快速滑动,支持Android2.3及以上
---下拉刷新上拉加载
---侧滑功能
---拖动排序

参考文章:

1、Android常用库之遇见你真舒心

2、15 个 Android 通用流行框架大全

3、Android开源项目第一篇——个性化控件(View)篇

4、2015最流行的Android组件、工具、框架大全

如果需要看源码请移步到我的博客直接点击连接即可:

http://blog.csdn.net/geofferysun/article/details/53008509

欢迎大家继续补充~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值