编者按
著名的安卓开源项目作者Amit Shekhar在他的博客上总结了他认为每个安卓项目都应该用到的19个开源安卓库,原文请点击 这里
未经许可,禁止转载
我也是一个非常喜欢开源软件的人,自己用心做了不少安卓上使用的库,也同样收到了社区的回馈。我只能说开发者社区实在是太棒了。下面这些安卓库强烈推荐,你应该把他们用在你每一个安卓项目里:
安卓项目必用的开源库
Fresco
github.com/facebook/fr…
在网页端用类IDE的体验浏览和搜索 fresco 的源代码
经常被查看的文件:
Latest analyzed version: on
Fresco是一个强大的安卓图形显示库,它帮助你处理图像的读取和显示。它能够读取网络或者本地介质上的资源,也能够以占位符显示没有处理完毕的图像。它有两级缓存:内存缓存以及在本地存储介质中的缓存。
Glide
github.com/bumptech/gl…
在网页端用类IDE的体验浏览和搜索 glide 的源代码
经常被查看的文件:
Latest analyzed version: on
Glide是一个高效快捷的开源安卓媒体管理和图像读取框架,它把媒体解码,内存和磁盘缓存,资源池结合成一个简单易用的界面。这个库专注实现光滑滚动。
OkHttp
github.com/square/okht…
在网页端用类IDE的体验浏览和搜索 okhttp 的源代码
经常被查看的文件:
Latest analyzed version: on
OkHttp是一个适用于安卓和JAVA程序的HTTP+HTTP/2客户端。在安卓系统上,Http引擎是网络通信的首选。
Fast Android Networking
github.com/amitshekhar…
在网页端用类IDE的体验浏览和搜索 Fast-Android-Networking 的源代码
经常被查看的文件:
Latest analyzed version: on
基于OkHttp的Fast Android Networking能让网络通信变得简洁(不用样板代码),使得开发者能轻易写出通信代码。它是一个轻量级的快速网络通信库。试试看,你会爱上它。
RxJava
github.com/ReactiveX/R…
在网页端用类IDE的体验浏览和搜索 RxJava 的源代码
经常被查看的文件:
Latest analyzed version: on
RxJava — Reactive Extensions for the JVM — 一个用JVM里面的observed sequence来构建异步和基于事件库。
EventBus
github.com/greenrobot/…
在网页端用类IDE的体验浏览和搜索 EventBus 的源代码
经常被查看的文件:
Latest analyzed version: on
为安卓优化的事件总线(event bus),简化了Activities, Fragments, Threads, Services之间的通信。
Device Year Class
github.com/facebook/de…
在网页端用类IDE的体验浏览和搜索 device-year-class 的源代码
经常被查看的文件:
Latest analyzed version: on
Device Year Class会告知当前设备的内存,CPU核和时钟频率在哪一年的产品线里属于高配。它可以让开发者根据手机的硬件性能来让app做出不同的行为。
Network Connection Class
github.com/facebook/ne…
在网页端用类IDE的体验浏览和搜索 network-connection-class 的源代码
经常被查看的文件:
Latest analyzed version: on
Network Connection Class能够查询当前用户的网络连接质量。它会根据网络质量的不同分成好几种”Connection Classes”(连接分类)让开发更容易。这个库通过监听app已有的网络流量情况并在通信速度改变的时候通知用户。开发者能够通过网络连接情况调节app的行为(比如使用更低质量的影音,停止使用输入提示等等)。
另外,Fast Android Networking 也有这个功能。
Android Debug Database
github.com/amitshekhar…
在网页端用类IDE的体验浏览和搜索 Android-Debug-Database 的源代码
经常被查看的文件:
Latest analyzed version: on
Android Debug Database是一个功能强大的用于调试安卓数据库和共享首选项(shared preference)的库。它是一个在浏览器里浏览数据库和共享首选项的简单易用的工具。
LeakCanary
github.com/square/leak…
在网页端用类IDE的体验浏览和搜索 leakcanary 的源代码
经常被查看的文件:
Latest analyzed version: on
LeakCanary是一个安卓和Java上用于检测内存泄漏的一个库。
MPAndroidChart
github.com/PhilJay/MPA…
在网页端用类IDE的体验浏览和搜索 MPAndroidChart 的源代码
经常被查看的文件:
Latest analyzed version: on
安卓上强大的图表浏览库,支持诸如线形图,柱形图,饼图,蜡烛图等的图形显示,并提供缩放,拖放和动画支持。
ButterKnife
github.com/JakeWharton…
在网页端用类IDE的体验浏览和搜索 butterknife 的源代码
经常被查看的文件:
Latest analyzed version: on
ButterKnife是一个视图绑定(view binding)的工具。它利用标注(annotation)为我们自动生成样板代码。这个工具本质上能帮我们在处理视图的时候避免类似findViewById(R.id.view)
这样的重复代码,让我们的项目看起来更整洁。
Dagger
github.com/google/dagg…
在网页端用类IDE的体验浏览和搜索 dagger 的源代码
经常被查看的文件:
Latest analyzed version: on
安卓和java的快速的依赖注入库。它简化了对于共用实例的读写,使复杂的依赖设置变的简单,让单元测试和集成测试更加容易。
GreenDao
github.com/greenrobot/…
在网页端用类IDE的体验浏览和搜索 greenDAO 的源代码
经常被查看的文件:
Latest analyzed version: on
GreenDAO是一个开源的安卓ORM,它让开发SQLite更有趣。它让开发者不再需要处理数据库底层操作,节省开发的时间。
Realm
github.com/realm/realm…
在网页端用类IDE的体验浏览和搜索 realm-java 的源代码
经常被查看的文件:
Latest analyzed version: on
简单存储,高速查询,节省大量开发时间。Realm Mobile Database是SQLite的一个替代品。
Timber
github.com/JakeWharton…
在网页端用类IDE的体验浏览和搜索 timber 的源代码
经常被查看的文件:
Latest analyzed version: on
在安卓原有的Log class之上提供有小型,可扩展API的一个Logger.
Hugo
github.com/JakeWharton…
在网页端用类IDE的体验浏览和搜索 hugo 的源代码
经常被查看的文件:
Latest analyzed version: on
通过标注触发为你的debug build自动记录方法调用的日志。作为一个程序员,你经常需要加入logging函数打印程序里面的函数调用,以及参数和返回值,并花时间执行。这不是什么问题,我们每个人都这样做。只是能不能够让它变得更简单一些呢?只要在函数头加上@DebugLog你就能得到我们刚才所讲的所有信息。
Android GPU Image
github.com/bumptech/gl…
在网页端用类IDE的体验浏览和搜索 glide 的源代码
经常被查看的文件:
Latest analyzed version: on
提供安卓上高效的基于OpenGL的滤镜的库。
ExoPlayer
github.com/google/ExoP…
在网页端用类IDE的体验浏览和搜索 ExoPlayer 的源代码
经常被查看的文件:
Latest analyzed version: on
ExoPlayer是一个应用级的安卓媒播放器。它提供的API支持播放本地或者网络上的音频。ExoPlayer支持当前安卓媒体播放器API不支持的功能,比如DASH和Smooth Streaming adaptive playbacks(根据带宽自动实时调节播放分辨率).
GSON
github.com/google/gson
在网页端用类IDE的体验浏览和搜索 gson 的源代码
经常被查看的文件:
Latest analyzed version: on
一个提供Java对象序列化/反序列化至JSON格式的库。