前言

收集了一些比较常见的开源库,特此记录(已收录350+)。另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言。

一 、基本控件

TextView

EditText

ImageView

Button

Spinner

CheckBox

ProgressBar(包含loading动画)

Seekbar

RatingBar

  • MaterialRatingBar 与 Google 系应用设计相同、支持拉伸、修正原生实现诸多问题的星级评分条

Toast

RecyclerView

  • BaseRecyclerViewAdapterHelper 万能adapter

  • MultiChoiceAdapter 多选adapter

  • SwipeRecyclerView 基于RecyclerView的封装,提供了Item侧滑菜单、Item滑动删除、Item长按拖拽、添加HeaderView/FooterView、加载更多、Item点击监听等基本功能。

  • EasyRecyclerView 封装RecyclerView

  • StickyItemDecoration 悬浮头部

  • PinnedSectionItemDecoration 悬浮头部

  • recyclerview-animators RecycleView的项目动画的Android组件库

  • UltimateRecyclerView 能强大的Recyclerview,包括了下拉刷新,加载更多,多种动画,空数据提示,拖动排序,视差处理,工具栏渐变,滑动删除,自定义floating button,多种刷新效果,scrollbar等等元素,而且使用起来跟recyclerview一样的方便。

  • epoxy Epoxy采用可组合的方式来创建列表。列表中的每个item由一个model代表,model定义了item的布局,id以及span。model还负责处理数据到视图的绑定,在视图被回收的时候释放资源。如果要显示这些model则把它们添加到Epoxy的adapter中,adapter为你处理复杂的显示问题。

  • XRecyclerView XRecyclerView实现了下拉刷新,滚动到底部加载更多以及添加header功能的的RecyclerView。使用方式和RecyclerView完全一致,不需要额外的layout,不需要写特殊的adater。 加载效果内置了AVLoadingIndicatorView上的所有效果,可以根据需要指定。

  • RecyclerViewPager RecyclerViewPager基于 RecyclerView 实现的 ViewPager,可自定义 Page 切换敏感度,支持垂直 ViewPager,支持类 Gallary 效果,支持无限循环。

  • SuperRecyclerView SuperRecyclerView主要特性包括:1、当adapter没有设置的时候使用ProgressBar(进度条);2、当adapter时空的时候使用EmptyView;3、SwipeRefreshLayout (Google's one);4、Swipe To Dismiss;5、Sticky headers;6、无限滚动,当到达最后一项时,加载更多数据;

  • LRecyclerView 下拉刷新,自动加载更多;仿IOS侧滑Item删除菜单

  • LayoutManagerGroup 自定义RecyclerView 的LayoutManager实现几种炫酷的效果。

  • android-advancedrecyclerview 自定义RecyclerView (2019-03-29 新增)

日历、时钟

Webview

ScrollView

ViewPager

WheelPicker

导航栏

二、功能相关

图片选择

图片加载

音视频

刷新控件

动画

轮播图

权限

二维码

新手引导

  • NewbieGuide Android 快速实现新手引导层的库,通过简洁链式调用,一行代码实现引导层的显示

  • GuideView 能够快速为任何一个View创建一个遮罩层,支持单个页面,多个引导提示,支持为高亮区域设置不同的图形,支持引导动画,方便扩展,良好支持fragment

数据库

  • greenDAO

  • ActiveAndroid Android Sqlite orm 的 db 工具类

  • realm-java 移动端的数据库,适用于 Phone、Tablet、Wearable,支持 ORM,线程安全、支持连表及数据库加密,比 SQLite 性能更好

  • DBFlow Android SQLite ORM 工具库。综合了 Active Android, Schematic, Ollie,Sprinkles 等库的优点;通过注解实现,性能好;能生成 ContentProvider。

  • SnappyDB key-value数据库,非常流行的NoSQL数据库

  • LitePal 不编写SQL语句的情况下完成大多数数据库操作,包括创建或升级表、CRUD操作、聚合函数等

  • objectbox-java ObjectBox是一个超高速的面向对象的数据库,具有很强的关系支持。ObjectBox嵌入到Android、Linux、MacOS或Windows应用程序中。

  • wcdb 一个高效、完整、易用的移动数据库框架,基于(https://github.com/sqlcipher/sqlcipher)[SQLCipher],支持iOS, macOS和Android。

  • Android-Debug-Database 数据库调试工具

图表

菜单

手势关闭

事件处理

换肤

状态栏

颜色选择器

布局相关

屏幕适配

其他

三、网络相关

http

  • retrofit

  • okhttp

  • okhttp-OkGo 封装了 OkHttp 的网络请求框架

  • {停止维护} okhttputils okhttp的辅助类

  • NoHttp 实现Http标准协议框架,支持多种缓存模式,底层可动态切换OkHttp、URLConnection。

  • xUtils3 xUtils 包含了orm, http(s), image, view注解

  • afinal Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp

  • Fast-Android-Networking 支持http2的网络库(2019-03-29 新增)

json

下载、上传

rx

  • RxAndroid 对RxJava在Android上的扩展,使得Android上也很容易实现reactive components,简化线程操作,从而写出很漂亮的代码。

  • RxJava

  • RxCache 专门为Retrifit打造的缓存库

  • ReactiveNetwork 检测网络状态

  • RxLifecycle 管理rx的生命周期

  • AutoDispose rx 工具类

四、自定义View

蛛网图

翻书效果

图案解锁

望远镜效果(部分高亮)

其他

五、其他

工具类

  • AndroidUtilCode 强大易用的安卓工具类库

  • RxTools Android开发人员不得不收集的工具类集合

  • butterknife 利用 annotation 帮你快速完成 View 的初始化,减少代码

热修复

插件化

  • RePlugin RePlugin是一套完整的、稳定的、适合全面使用的,占坑类插件化方案,由360手机卫士的RePlugin Team研发,也是业内首个提出”全面插件化“(全面特性、全面兼容、全面使用)的方案。(2019-03-27 新增)

签名打包

  • walle Android Signature V2 Scheme签名下的新一代渠道包打包神器

  • packer-ng-plugin 100个渠道包只需要10秒钟

反编译

依赖注入

  • dagger 依赖注入,适用于 Android 和 Java

日志

路由

  • ARouter 帮助 Android App 进行组件化改造的路由框架

内存泄漏检测

布局优化

  • X2C 在编译生成APK期间,将需要翻译的layout翻译生成对应的java文件,这样对于开发人员来说写布局还是写原来的xml,但对于程序来说,运行时加载的是对应的java文件。 (2019-03-27 新增)

画图

图片压缩

摄像头

富文本编辑器

指示器

  • MagicIndicator 强大、可定制、易扩展的 ViewPager 指示器框架。

  • dotsindicator 视图页导航点指示器(2019-03-27 新增)

自定义字体加载

文件加密

表情包

相机滤镜

车牌识别

键盘冲突

蓝牙

  • Android-BLE AndroidBLE蓝牙框架,包括扫描、连接、设置通知、发送数据、读取、接收数据和OTA升级以及各种直观的回调,近乎一行代码植入项目,可扩展配置蓝牙相关操作。

测试

  • Matrix 通过各种性能监控方案,对性能监控项的异常数据进行采集和分析,输出相应的问题分析、定位与优化建议,从而帮助开发者开发出更高质量的应用。

  • pandora 一款无需ROOT、可以直接在应用内查看和修改包括网络、数据库、UI等的工具箱,适合开发和测试阶段的各种问题的快速定位。

  • ArgusAPM 。ArgusAPM是360移动端产品使用的可视化性能监控平台,为移动端APP提供性能监控与管理,可以迅速发现和定位各类APP性能和使用问题,帮助APP不断的提升用户体验。(2019-03-27 新增)

  • AndroidPerformanceMonitor 非侵入式的性能监控组件

  • UETool 一个各方人员(设计师、程序员、测试)都可以使用的调试工具。它可以作用于任何显示在屏幕上的 view,比如 Activity/Fragment/Dialog/PopupWindow 等等。(2019-03-27 新增)

  • robolectric 单元测试 (2019-03-29 新增)

其他

Android 常用开源库总结(持续更新)的更多相关文章

  1. Android常用开源库集合【持续更新】

    1.FastJson  阿里巴巴工程师做的一个方便的JSON转换库 2.ButterKnife 只要作用能代替代码中大量的findviewbyid语句的使用,使用@injectview注入方式 3.v ...

  2. Android开发中常用的库总结(持续更新)

    这篇文章用来收集Android开发中常用的库,都是实际使用过的.持续更新... 1.消息提示的小红点 微信,微博消息提示的小红点. 开源库地址:https://github.com/stefanjau ...

  3. 2019最新Android常用开源库总结(附带github链接)

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 1.TextView HTextView ...

  4. Android常用开源库(转)

    一 .基本控件 TextView HTextView 一款支持TextView文字动画效果的Android组件库. ScrollNumber 滚动数字控件 ticker 滚动数字控件 ReadMore ...

  5. 2019年最新android常用开源库汇总上篇(转)

    1.基本控件 1.1.TextView ScrollNumber ReadMoreTextView HtmlImage android-autofittextview html-textview Ba ...

  6. Android 实用开源库(不定期更新)

    ZXing 极其好用的二维码开源库. GayHub:https://github.com/zxing/zxing MPAndroidChart MPAndroidChart 是 Android 一个强 ...

  7. Android 使用开源库载入网络图片

    Android 使用开源库载入网络图片,使用开源库载入图片.单击listview弹出popupwindow弹出框详情查看: Android 单击listview弹出popupwindow弹出框 ,里面 ...

  8. pytorch常用函数总结(持续更新)

    pytorch常用函数总结(持续更新) torch.max(input,dim) 求取指定维度上的最大值,,返回输入张量给定维度上每行的最大值,并同时返回每个最大值的位置索引.比如: demo.sha ...

  9. Android中常用开发工具类—持续更新...

    一.自定义ActionBar public class ActionBarTool { public static void setActionBarLayout(Activity act,Conte ...

随机推荐

  1. OpenTK学习笔记(1)-源码、官网地址

    OpenTK源码下载地址:https://github.com/opentk/opentk OpenTK使用Nuget安装命令:OpenTK:Install-Package OpenTK -Versi ...

  2. pip常用命令(转载)

    用阿里云服务器,使用pip安装第三方库的时候卡的要死.所以我就想pip能不能安装本地的包. 找到了这篇博客: http://me.iblogc.com/2015/01/01/pip%E5%B8%B8% ...

  3. 安卓之Android.mk多文件以及动态库编译

    1.多文件编译 多文件编译共有两种方式: (1) 在Android.mk中一一添加 LOCAL_PATH:= $(call my-dir) #定义当前模块的相对路径 include $(CLEAR_V ...

  4. express 413 Request Entity Too Large解决办法

    1.配置nginx 原因是请求实体太长了.一般出现种情况是Post请求时Body内容Post的数据太大了 如上传大文件过大; 如POST数据比较多 处理方法修改nginx.conf的值就可以解决了. ...

  5. [计算机视觉][神经网络与深度学习]R-FCN、SSD、YOLO2、faster-rcnn和labelImg实验笔记

    R-FCN.SSD.YOLO2.faster-rcnn和labelImg实验笔记 转自:https://ask.julyedu.com/question/7490 R-FCN paper:https: ...

  6. Centos7修改profile错误的解救方案

    在改profile的时候,改出问题了,除了cd以外的命令基本都不能用了.使用root用户执行: # export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11 ...

  7. idea右下角显示使用内存情况

    效果 设置

  8. TCP/IP学习笔记16--TCP--特点,数据重发,连接管理,段

    TCP充分实现了数据传输时各种控制功能,可以进行丢包时的重发控制,还可以对次序乱掉的包进行顺序控制,这些在UDP中都是没有的.UDP是一种没有复杂控制,提供面向无连接通信服务的一种协议.TCP是面向有 ...

  9. 为文献管理软件Mendeley设置代理

    Mendeley由于某些原因无法在线同步,需要fq,在tools->option->connection中可以设置http代理或者sock5代理, sock5可以使用shadowsocks ...

  10. Java spi 和Spring spi

    service provider framework是一个系统, 实现了SPI, 在系统里多个服务提供者模块可以提供一个服务的实现, 系统让客户端可以使用这些实现, 从而实现解耦. 一个service ...