一些第三方库(辅助使用)目录说明
leakcanary:检测应用内存泄漏问题,这个都知道吧
butterknife:帮助Android控件和回调的进行依赖注入,JakeWharton大神的力作
dagger2:Android和Java依赖注入库
rxjava:一个实现异步操作的库,现在非常火
RxAndroid:用于Android的Rxjava绑定库
RxBinding:配合Rxjava处理控件异步调用
RxLifecycle:防止RxJava中subscription导致内存泄漏
RxPermissions:基于RxJava开发的用于帮助在Android 6.0中处理运行时权限检测
retrofit:目前最好用的网络通讯库,应该都用过吧
okhttp:okhttp和retrofit做网络通讯是绝配
greenDAO:ORM数据库,能配合rxjava使用
logger:Log库,让打印的Log变得非常漂亮
glide:Google出品的图片加载库,这里有非常好的指导文档:https://mrfu.me/2016/02/27/Glide_Getting_Started/
BaseRecyclerViewAdapterHelper:很好用的RecyclerView多功能适配器库,项目里我并没有直接用这个库,而是按我自己使用习惯在它较早的代码上做了些改动
recyclerview-animators:RecyclerView的动画库,内置了非常多的动画效果
CircleImageView:非常常用的用来显示圆形头像的库
PhotoView:可根据手势进行缩放的图像库,这个也很常见
AndroidImageSlider:展示头部Banner的库,动画效果很多,就是需要依赖picasso和nineoldandroids这两个库
NumberProgressBar:性感的数字进度条
FlycoTabLayout:样式比TabLayout多样的Tab库
FlycoDialog:多功能的Dialog
FlycoLabelView:添加角标的库
gson:帮助Json和Object转换,这个也常用
fastjson:功能同gson,有些地方gson不能处理可以试试这个,阿里巴巴出品
ijkplayer:B站出品的视频解码库
DanmakuFlameMaster:同样B站出品的弹幕库
ShineButton:炫酷效果的点击按钮,主要用于显示收藏之类的动画
RichText:富文本的处理库,用起来挺方便就是有内存泄漏- -
Android-SpinKit:集成多种动画效果的Drawable,之前有看源码觉得代码封装得挺好,动画不仅仅只能用在View上
filepicker:这个是用来处理PreferenceScreen的文件选中库,PreferenceScreen感觉平时不怎么看到使用,用法到时挺特别
tinker:微信Android热补丁方案,功能强大,和其它热修补方案对比看这里wiki
DragSlopLayout:一个辅助开发拖拽功能的库,这是我为了做这个App的某些功能封装的库- -,现在倒也有用在工作的项目上
IjkPlayerView:基于ijkplayer开发的播放器,也是为了做这个App的视频播放功能封装的库- -,里面加了弹幕功能,感兴趣可以看下
TagLayout:这个库代码有点厚重,有时间再重构下
2017值得期待的库
1.Lottie
这是一个能解析Adobe After Effects动画导出的JSON文件并把它们渲染成本地动画的库。在Google Play Store上有一个示例app。
2.Toasty
一个创建自定义Toast的库。正如作者所说,这个库是:
The usual Toast, but with steroids.
这是另外一个创建自定义Toast的库。
多个自定义选项让你的app和用户体验与众不同!用代码或者styles.xml去定义你的Toast样式。
4.Store
Store是一个异步加载和缓存库。文档描述:
Store是一个简化数据的请求,解析,保存,以及数据重试的类。一个Store类似于仓库模式,不过用RxJava封装成了响应式的API,以支持单向数据流 。
文档非常易懂,这个库值得尝试。你可以尝试各种flows,比如数据请求,缓存,解析等。
如果你使用Google Play Movies,你可能注意到了这个动画效果很棒,可以预览电影的SeekBar。Rúben Sousa实现了这种效果并开源。下面的gif图片很好的说明了其功能。如果你的app是一个播放器,你决定应该试试。
6.Chuck
如果你使用OkHttp的话,这个库可以帮助你拦截并记录所有的HTTP请求与响应。它还提供了一个来显示内容。
CoordinatorTabLayout是一个自定义的组合控件,帮助你快速实现TabLayout与CoordinatorLayout相结合的样式。
8.boxing
Boxing是一个基于MVP模式的Android多媒体选择器,你可以:
图片选择(单/多选),
预览或者剪裁图片。
它还支持gif,视图选择,图片压缩以及自定义UI:
RecyclerView实现的二维表格,不仅可以加载历史数据,还能加载新数据。
又一个用RecyclerView实现的Material横向日历视图。
一个集成了拍照功能的Fragment ,根据README:
CameraFragment直接预览camera视图,并提供简单的API来捕获或者管理设备。你可以使用CameraFragment设置自己的布局以及控制camera。
12.AwesomeBar
这是Florent Champigny的另一个很棒的库。一种 top bar 的新设计,与DrawerLayout一起协同工作。灵感来自Gmail Mobile from Weekz。
一个弧形的抽屉导航。
一个可以在加载数据的时候显示闪烁(Shimmer)的RecyclerView。这个RecyclerView内置一个adapter,控制shimmer的外观。
谷歌启动器风格的开关图标
这个lib继承AppCompatImageView,可以使用app:srcCompat属性为SwitchIconView设置任意图标(vector 或者 image)。
16.CounterFab
这是一个在浮动操作按钮的右上角显示数字标识的库。可以从Google Play上下载demo app。
一个可以让TextView以淡如淡出的形式不断改变自己内容的库。
18.Bridge
Bridge是一个简单但是强大的HTTP网络操作库。提供链式调用的API,为了最大的兼容性和最快的速度,用Java/Android的URLConnection类实现。
这个库文档非常齐全,绝对值得一试。
19.Ason
这是Aidan Follestad的第二个library。其主要目的是简化和JSON的交互。
also makes (de)serialization painless.
文档也是非常的棒,你可以在这里查看:https://github.com/afollestad/ason
20.ObjectBox
大家都应该知道greenrobot,不知道的话也应该知道他们开发的GreenDAO和EventBus。这次要介绍的是一个面向对象的数据库。greenrobot宣称:
性能是我们创建ObjectBox的首要因素。之前我们创建了安卓和SQLite上最快的对象关系映射 (ORM)greenDAO。自从2011年第一个版本发布以来,我们对对象持久化-以及SQLite的缺陷有了许多认识。我们意识到, 要显著提高移动端的性能,需要从内核开始,创建一个基于对象的数据库。
21.FlowLayout
一个让子view在空间不够的情况下自动跳到下一行的布局。子view之间的间隔由FlowLayout计算出来,以便让view是均匀分布的。
22.非官方的 Google Actions Java SDK
这是来自Mirek Stanek的改版。因为官方的Google Actions SDK 是用Node.js写的,他用Java写了一个非官方的版本。根据README描述:
Google Actions Java SDK是基于Node.js的,但是没有一个镜像。这个库的目的是让他完全兼容Assistant平台的Conversational Protocol。
2017年2月9日谷歌发布了Android Wear 2.0。
Luke Klinker发现缺乏一个API,并把它发布了出来,它
支持简单快速的文字输入,不管是来自语音,键盘,还是预设回复。
24.Shortbread
这是一个这样的库
为使用了@Shortcut注解的Activity和方法生成app shortcuts。无需动用manifest, XML以及shortcut manager。只需为想要shortcut调用的代码添加注释。
这是一个帮助你实现关于我界面的库。