Android常用开源库(框架)整合 - Go语言中文社区

Android常用开源库(框架)整合


 Android系统最好的优势就在于它的系统底层使用了linux内核,我们都知道linux是一款非常优秀的操作系统,是开发者青睐已久的开发平台。Android同样延续了linux的优点,就是开源。现在Android开发已经开始成熟,一些成熟的开源库(框架)也涌现出来,使用开源路可以大大提高我们的开发效率,也因为编写设计这些框架的开发者不是Google官方就只一些热爱开发的技术大牛,所以相对来说,使用在项目中引入这些开源库比自己造轮子是省事的多的。为了方便后面阶段的开发,所以这里我对android常用的框架做一个整合。
 思维导图
1.缓存
 DiskLruCache:Java实现基于LRU的磁盘缓存框架,非goole官方所写,但获得了官方的认证。
 Dropbox、Twitter、网易新闻等都是使用DiskLruCache来进行硬盘缓存的
2.图片加载
(1)Android Universal Image Loader:一个强大的加载,缓存,展示图片的库
1.多线程下载图片,图片可以来源于网络,文件系统,项目文件夹assets中以及drawable中等
2.支持随意的配置ImageLoader,例如线程池,图片下载器,内存缓存策略,硬盘缓存策略,图片显示选项以及其他的一些配置
3.支持图片的内存缓存,文件系统缓存或者SD卡缓存
4.支持图片下载过程的监听
5.根据控件(ImageView)的大小对Bitmap进行裁剪,减少Bitmap占用过多的内存
6.较好的控制图片的加载过程,例如暂停图片加载,重新开始加载图片,一般使用在ListView,GridView中,滑动过程中暂停加载图片,停止滑动的时候去加载图片
7.提供在较慢的网络下对图片进行加载
(2)Picasso:一个强大的图片下载与缓存的库
(3)Fresco: 一个用于管理图像和他们使用的内存的库,提供了对图片的圆角、原形图片显示等功能,很方便也很强大。
(4)Glide:一个图片加载和缓存的库
3. 图片处理
(1)Picasso-transformations 一个为Picasso提供多种图片变换的库
(2)Glide-transformations 一个为Glide提供多种图片变换的库
(3)Android-gpuimage 基于OpenGL的Android过滤器
4. 网络请求
(1)Android Async HTTP Android异步HTTP库
(2)AndroidAsync 异步Socket,HTTP(客户端+服务器),
(3)WebSocket,和socket.io库。基于NIO而不是线程。
(4)OkHttp 一个Http与Http/2的客户端
(5)Retrofit 类型安全的Http客户端
(6)Volley Google推出的Android异步网络请求框架和图片加载框架
5. 网络解析
(1)Gson 一个Java序列化/反序列化库,可以将JSON和java对象互相转换
(2)Jackson Jackson可以轻松地将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象
(3)Fastjson Java上一个快速的JSON解析器/生成器
(4)HtmlPaser 一种用来解析单个独立html或嵌套html的方式
(5)Jsoup 一个以最好的DOM,CSS和jQuery解析html的库

6.数据库
(1)OrmLite JDBC和Android的轻量级ORM java包
(2)Sugar 用超级简单的方法处理Android数据库
(3)GreenDAO 一种轻快地将对象映射到SQLite数据库的ORM解决方案
(4)ActiveAndroid 以活动记录方式为Android SQLite提供持久化
(5)SQLBrite SQLiteOpenHelper 和ContentResolver的轻量级包装
(6)Realm 移动数据库:一个SQLite和ORM的替换品
7.依赖注入
(1)ButterKnife 将Android视图和回调方法绑定到字段和方法上
(2)Dagger2 一个Android和java快速依赖注射器。
(3)AndroidAnotations 快速安卓开发,易于维护
(4)RoboGuice Android平台的Google Guice
8.图表
(1)WilliamChart 创建图表的Android库
(2)HelloCharts 兼容到API8的Android图表库
(3)MPAndroidChart 一个强大的Android图表视图/图形库
9.后台处理
(1)Tape 一个轻快的,事务性的,基于文件的FIFO的库
(2)Android Priority Job Queue 一个专门为Android轻松调度任务的工作队列
10.事件总线
(1)EventBus 安卓优化的事件总线,简化了活动、片段、线程、服务等的通信
(2)Otto 一个基于Guava的增强的事件总线
11.响应式编程
(1)RxJava JVM上的响应式扩展
(2)RxJavaJoins 为RxJava提供Joins操作
(3)RxAndroid Android上的响应式扩展,在RxJava基础上添加了(4)Android线程调度
(5)RxBinding 提供用RxJava绑定Android UI的API
(6)Agera Android上的响应式编程
12.Log框架
(1)Logger 简单,漂亮,强大的Android日志工具
(2)Hugo 在调试版本上注解的触发方法进行日志记录
(3)Timber 一个小的,可扩展的日志工具
13.测试框架
(1)Mockito Java编写的Mocking单元测试框架
(2)Robotium Android UI 测试
(3)Robolectric Android单元测试框架
(4)Android自带很多测试工具:JUnit,Monkeyrunner UiAutomator,Espresso等
14.调试框架
(1)Stetho 调试Android应用的桥梁,使得可以利用Chrome开发者工具进行调试
15.性能优化
(1)LeakCanary 内存泄漏检测工具
(2)ACRA Android应用程序崩溃报告

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/yyg_2015/article/details/54317551
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-02-25 01:18:57
  • 阅读 ( 1706 )
  • 分类:Go开源项目

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢