最新最全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

导航栏

二、功能相关

图片选择

图片加载

音视频

  • ExoPlayer 谷歌出品的视频播放器

  • JiaoZiVideoPlayer 饺子视频播放器

  • ijkplayer ijk 播放器

  • GSYVideoPlayer一个第三方视频播放库,基于bilibili 开源的 ijkplayer,可自定义性也还不错,
    主要使用这个库实现类似微博等视频列表根据滚动判断自动播放,

  • VitamioBundle 多媒体播放器

  • VideoPlayerManager 帮助实现VideoPlayer控制,使得它更容易使用ListView和recyclerview。

  • PlayerBase 专注于播放视图组件的高复用性和组件间的低耦合,轻松处理复杂业务。

  • DanmakuFlameMaster 弹幕

  • AndroidVideoCache 视频缓存

  • TicktockMusic 一款 material design 风格的音乐播放器,可以播放本地和网络音乐,并且提供歌词显示。

  • Timber 一个完整的音乐播放器

  • NiceVieoPlayer 支持列表,完美切换全屏、小窗口的Android视频播放器(2019-03-27 新增)

刷新控件

动画

轮播图

权限

二维码

新手引导

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

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

轻存储

MMKV一款比sharepreferences稍重,远远小于数据库量级,但性能卓越的存储框架,由腾讯旗下的微信开发。(2020.05.09 新增)

数据库

  • 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][SQLCipher]),支持iOS, macOS和Android。

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

图表

菜单

手势关闭

事件处理

换肤

状态栏

颜色选择器

布局相关

加载反馈

  • LoadSir扩展性良好的加载反馈页管理框架(2020-05-09 新增)

屏幕适配

其他

三、网络相关

http

  • RxEasyHttp基于RxJava2+Retrofit2实现简单易用的网络请求框架

  • 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

蛛网图

翻书效果

图案解锁

望远镜效果(部分高亮)

其他

五、其他

工具类

  • utilcodex一个android 工具库,里面有非常多的工具类,当然实际项目用不到这么多,所以可以根据需求copy代码就好,不用集成(2020.05.09 新增)

  • 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

日志

容器

  • Atlas一个运行于Android系统上的一个容器化框架

路由

  • 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 新增)

其他

转载自:

作者:i小灰
链接:https://www.jianshu.com/p/3fde87405411

  • 6
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了满足广大Android开发爱好者与从业者的学习需求,我们精心整理并上传了一份全面而实用的Android项目资源包。这份资源包内容丰富,涵盖了从基础知识到实战应用的全方位内容,旨在为开发者们提供一个便捷、高效的学习平台。 一、文件手册 资源包中的文件手册部分,详细记录了Android开发的核心知识点和常用技术。无论是初学者还是有一定经验的开发者,都能从中找到所需的学习资料。手册采用了简洁明了的排版方式,使得查阅更加方便快捷。同时,手册内容深入浅出,既适合新手入门,也能为老手提供有价值的参考。 二、项目实战与练习 为了让学习者能够将理论知识与实践相结合,我们特别准备了项目实战与练习部分。这部分内容包含了多个精心设计的Android项目案例,从需求分析、设计思路到实现过程,都有详细的讲解和代码示例。学习者可以通过实际操作,深入了解Android开发的整个流程,提升自己的实战能力。 此外,我们还提供了一系列练习题,旨在巩固所学知识,检验学习成果。这些练习题既有基础题,也有难度较高的挑战题,适合不同层次的学习者进行练习。 三、Android开发工具集 在Android开发过程中,选择合适的工具能够大大提高开发效率。因此,我们整理了常用Android开发工具集,包括开发工具、测试工具、性能优化工具等。这些工具都是经过我们精心筛选和测试的,能够帮助开发者们更加高效地进行Android开发工作。 总的来说,这份Android项目资源包是一份不可多得的学习资料,无论你是初学者还是有一定经验的开发者,都能从中受益匪浅。我们希望通过这份资源包,为广大Android开发爱好者与从业者提供一个更加便捷、高效的学习平台,共同推动Android开发领域的发展。
### 回答1: Android树形控件是一种用于展示层级结构数据的控件,通常以树的形式展现。树形控件可以帮助用户直观地查看和选择层级结构数据,具有较好的可视化效果和用户体验。 在Android开发中,有很多开源的树形控件可供选择和使用。其中一些比较知名的开源树形控件包括以下几个: 1. AndroidTreeView:一个适用于Android开源树形控件,提供了简单易用的API来创建和定制树形结构。它支持扩展和折叠节点、选中节点、添加图标等功能,且具有较好的性能。 2. TreeViewList:另一个开源Android树形控件,支持多层级树形结构的展示和交互。它提供了高度可定制的视图和接口,可以方便地应用于各种需求,如文件浏览器、目录结构展示等。 3. FancyTree:一个功能强大的开源树形控件,适用于Android平台。它支持异步加载数据、平滑动画效果、节点选中状态管理等特性,同时还提供了丰富的定制选项和接口。 这些开源树形控件均有相应的文档和示例代码可供参考,在使用时可以根据具体需求选择最适合的。此外,还可以根据项目需求对这些进行二次开发和定制,以满足特定的功能和外观需求。 总结来说,虽然Android平台本身没有内置的树形控件,但通过使用开源树形控件,开发者可以方便地实现树形结构数据的展示和交互功能,并根据需求进行定制和扩展。 ### 回答2: 是的,Android 提供了很多开源的树形控件供开发者使用。其中,常用开源树形控件有:TreeView、TreeViewList、AndroidTreeView等。这些开源提供了丰富的功能和样式,可以帮助开发者在Android应用中实现树形展示和交互。 开源的树形控件通常具有以下特点: 1. 灵活的数据结构:开源的树形控件通常支持自定义的数据结构和模型,开发者可以根据自己的需求来定义树形结构和节点数据。 2. 支持展开与折叠:开源的树形控件支持节点的展开与折叠功能,可以帮助用户更好地浏览和管理树形结构。 3. 多样化的样式:开源的树形控件提供了多样化的样式和主题,开发者可以根据自己的应用风格来自定义树形结构的外观和样式。 4. 支持事件监听:开源的树形控件通常支持事件监听,开发者可以通过监听节点点击、展开和折叠等事件,实现相应的逻辑处理。 5. 高度可定制化:开源的树形控件通常提供了丰富的接口和方法,开发者可以根据自己的需求对树形控件进行定制和扩展。 总结而言,Android提供了多个开源的树形控件,这些具有灵活的数据结构、支持展开与折叠、多样化的样式、支持事件监听和高度可定制化等特点,可以帮助开发者快速实现树形结构的展示和交互。 ### 回答3: Android树形控件是一种用于展示具有层级关系的数据的控件,应用广泛。开源则意味着该控件的源代码是公开的,任何人都可以访问、使用、修改和共享。 在Android平台上,有许多开源的树形控件可供选择。例如,AndroidTreeView是一个流行的开源树形控件,它提供了丰富的功能和灵活的定制选项。使用AndroidTreeView,开发者可以轻松地创建多层级的树形结构,并处理结点的展开和折叠操作。该控件还允许开发者自定义结点的图标、背景颜色、字体样式等,满足不同应用场景的需求。 开源的树形控件提供了许多优势。首先,它们节省了开发者的时间和精力,因为可以直接使用成熟的控件,而不需要从头开始编写树形控件。其次,开源控件通常有一个活跃的社区,开发者可以在社区中寻求帮助、解决问题,并学习其他开发者的经验。此外,开源控件还提供了灵活的定制选项,可以根据应用的需求进行个性化定制。 然而,开源控件也存在一些潜在的缺点。首先,由于源代码是公开的,其他人可能会发现其中的漏洞或安全问题。因此,作为开发者,我们需要仔细审核源代码,并及时更新以修复潜在的问题。此外,如果对开源控件的修改比较多,可能需要投入更多时间和精力来适应定制需求。 综上所述,Android树形控件开源能够提供丰富的功能和灵活的定制选项,为开发者节省时间和精力,同时也需要注意源代码的安全性和开发的适应性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值