Android优秀开源框架介绍
- 开篇
- 网络请求框架
- android图表框架
- 图片加载框架
- 动画库
- 工具类开源库
- 13. AndroidUtilCode - 工具接口库
- 14. zxing - 二维码一维码展示和解析
- 15. logger - log打印
- 16. stetho - debug调试桥
- 17. Luban - 图片压缩
- 18. DoraemonKit - 性能监控助手
- 19. RxTool - android工具集
- 20. PermissionsDispatcher - 基于注解权限处理
- 21. RxPermissions - Android权限申请
- 22. uCrop
- 23. Fragmentation
- 24. QMUI_Android
- 25. FileDownloader - 文件下载库
- 26. Calligraphy - 批量定义字体
- 27. AndroidAutoSize 多分辨率适配方案
- 28. glide-transformations - glide图片转换库
- 29. HomeMirror
- 30. easypermissions
- 注解类开源库
- 异步操作、消息推动、和即时通讯
- 反编译
- Json
- 下拉刷新和滑动类开源库
- 自定义View
- 45. PhotoView
- 46. CircleImageView(圆形ImageView)
- 47. SlidingMenu - 侧滑菜单
- 48. Android-PickerView - 多级选择器控件
- 49. ViewPagerIndicator - ViewPager分页指示器
- 50. android-gif-drawable - Gif自定义控件
- 51. Matisse - 图片视频选择器
- 52. vlayout - LayoutManager扩展库
- 53. AndroidSwipeLayout - 左右滑动菜单
- 54. Android-ObservableScrollView - 滚动view
- 55. FlycoTabLayout - 各种样式的tablayout
- 56. MaterialDesignLibrary - Material设计基础组件库
- 57. AVLoadingIndicatorView - 多种loading组件
- 58. banner - 轮播组件
- 59. AndroidSlidingUpPanel - 上滑托盘面板库
- 60. BottomBar - 底部导航栏组件
- 61. DanmakuFlameMaster - 烈焰弹幕库
- 62. MaterialViewPager - Material设计的ViewPager
- 63. material-components-android - material设计组件样式库
- 64. cheesesquare - 新组件展示库
- 65. StatusBarUtil - 状态栏样式
- 游戏引擎
- 热更新框架
- 播放器
- 架构
- 数据库
- WebView
- App
- Android 学习资料
- 手机插件框架及手机虚拟机
开篇
本文中介绍框架来源,根据github android开源框架星数排名,取前80。
写该文章的目的是为了多了解网络上流行开源框架,减少和避免重复造轮子的尴尬。
网络请求框架
1. okhttp
简介:
一个处理网络请求的开源项目,是安卓端最火热的轻量级框架,由移动支付Square公司贡献(该公司还贡献了Picasso) [1]
用于替代HttpUrlConnection和Apache HttpClient(android API23 6.0里已移除HttpClient,现在已经打不出来)。
github地址:https://square.github.io/okhttp/
使用说明参考链接:https://blog.csdn.net/u013651026/article/details/79738059
2. retrofit
简介:
Retrofit是Square公司开发的一款针对Android网络请求的框架,遵循Restful设计风格,底层基于OkHttp。
特点是:
- 支持同步/异步网络请求
- 支持多种数据的解析&序列化格式(Gson、json、XML等等)
- 通过注解配置网络请求参数
- 提供对Rxjava的支持
github地址:https://square.github.io/okhttp/
使用说明参考链接:https://www.jianshu.com/p/0fda3132cf98
3. android-async-http
简介:
android-async-http基于回调的android异步网络请求库,其构建 基于Apache的HttpClient库。
github地址:https://github.com/android-async-http/android-async-http
使用说明参考链接: https://blog.csdn.net/keep_driving_xinyang/article/details/50522551
android图表框架
4. MPAndroidChart
简介:
MPAndroidChart 是 Android 一个强大且容易使用的图表库,由PhilJay提供。
支持线状图、柱状图、散点图、烛状图、气泡图、饼状图和蜘蛛网状图等8种不同的图表和各种手势。
github地址: https://github.com/PhilJay/MPAndroidChart
使用说明参考链接:https://www.jianshu.com/p/f1cfdf2dc98c
图片加载框架
5. glide
简介:
Glide是一个android官方推荐的开源图片加载框架,具有快速高效、滚动平滑、api简单易用、支持图片格式多(支持视频快照,图片,和GIF动画)等特点。
github地址:https://bumptech.github.io/glide/
使用说明参考链接:https://www.jianshu.com/p/791ee473a89b
6. picasso
简介:
一个图片下载和缓存开源库,由square公司提供。
github地址:https://github.com/square/picasso
使用说明参考链接:https://blog.csdn.net/tongseng/article/details/79592948
7. Android-Universal-Image-Loader
简介:
Android-Universal-Image-Loader用于图片下载、缓存和显示的开源库,特点是:
- 多线程的图像加载;
- 的可能性的宽调谐对ImageLoader的配置(线程池的大小,HTTP选项,内存和光盘高速缓存,显示图像,以及其他);
- 的图像的可能性中的缓存存储器和/或设备的文件器系统(或SD卡);
- 可以“听”加载过程中;
- 可自定义每个显示的图像调用分隔的选项 。
github地址:https://github.com/nostra13/Android-Universal-Image-Loader
使用说明参考链接:https://www.jianshu.com/p/ee4c62729670
8. fresco
简介:
fresco是一个有Facebook提供的,图片加载框架,它支持从网络、本地存储或app本地资源加载图片,在图片加载完成时,显示默认占位符。它有两级缓存:一级在内存中,另一级在本地磁盘。
github地址:https://github.com/facebook/fresco
使用说明参考链接: https://www.fresco-cn.org/docs/getting-started.html
动画库
9. lottie-android
简介:
Lottie 是在 Android 和 iOS上 原生渲染 的After Effects(AE)动画,Lottie是 Airbnb 开源的支持Android 和 iOS 的动画库,它可以解析 AE 动画中用Bodymovin 导出的json文件,并在移动设备上利用原生库进行渲染 。
github地址:https://github.com/airbnb/lottie-android
使用说明参考链接:https://blog.csdn.net/qq_15538877/article/details/80503773
10. Material-Animations - Activity过度动画
简介:
Material-Animations是google提供的Activity过渡动画集。
github地址:https://github.com/lgvalle/Material-Animations
使用说明参考链接: https://blog.csdn.net/qq_35343446/article/details/80862876
11. AndroidViewAnimations - View炫酷动画
简介:
AndroidViewAnimations是一个能实现很多很酷炫的 Android View动画的开源库, 动画效果是通过借鉴 Animate.css 来实现的, 不仅酷炫,使用起来也非常简单。
github地址:https://github.com/daimajia/AndroidViewAnimations
使用说明参考链接: https://github.com/daimajia/AndroidViewAnimations
12. Recyclerview-animators - 列表动画库
简介:
用于Recyclerview列表项的动画库集。
github地址:https://github.com/wasabeef/recyclerview-animators
使用说明参考链接: https://github.com/wasabeef/recyclerview-animators
工具类开源库
13. AndroidUtilCode - 工具接口库
简介:
AndroidUtilCode是一个功能强大且易于使用的Android库。 该库封装了Android开发中常用的功能,这些功能具有完整的演示和单元测试。 通过使用它的封装API,您可以大大提高开发效率。 该程序主要由两个模块组成,它们是开发中常用的utilcode,以及很少用于开发的subutil,但是utils可以有利于简化主模块。
github地址:https://github.com/Blankj/AndroidUtilCode
使用说明参考链接:https://github.com/Blankj/AndroidUtilCode/blob/master/lib/utilcode/README-CN.md
14. zxing - 二维码一维码展示和解析
简介:
ZXing(“zebra crossing”)是一个开源的、多格式的、用Java实现的一维/二维条码图像处理库,具有到其他语言的端口。
该项目可实现的条形码编码和解码。我们目前支持以下格式:UPC-A,UPC-E、EAN-8,EAN-13、39码、93码、代码128、创新及科技基金、库德巴、RSS-14(所有的变体)、RSS扩展(大多数变体)、QR码、数据矩阵、阿兹台克人('测试版’质量)、PDF 417('阿尔法’的质量)。
github地址:https://github.com/zxing/zxing
使用说明参考链接: https://www.cnblogs.com/huanzi-qch/p/10097791.html
15. logger - log打印
简介:
简单、可读性强、强大的log打印库。
github地址:https://github.com/orhanobut/logger
使用说明参考链接: https://github.com/orhanobut/logger
16. stetho - debug调试桥
简介:
Stetho 是一个facebook 开发的功能强大的 Android 应用调试桥,起到桥梁的作用,连接 Android 应用和 Chrome,通过 Chrome 开发者工具调试 Android 应用,提供视图元素检查,网络监控,数据库动态交互,Dumpapp(可扩展的命令行交互接口),JavaScript Console 等功能。
当启用后,开发者可以通过 Chrome 桌面浏览器中的开发者工具访问本地应用。开发者也可以选择启用可选的 dumpapp 工具提供一个强大的应用内部命令行接口。
github地址:https://github.com/facebook/stetho
使用说明参考链接: https://segmentfault.com/a/1190000012075067
17. Luban - 图片压缩
简介:
Luban(鲁班) —— Android图片压缩工具,仿微信朋友圈压缩策略。
github地址:https://github.com/Curzibn/Luban
使用说明参考链接: https://github.com/Curzibn/Luban
18. DoraemonKit - 性能监控助手
简介:
简称 “DoKit” 。一款功能齐全的客户端( iOS 、Android )研发助手,你值得拥有。
github地址:https://github.com/didi/DoraemonKit
使用说明参考链接: https://github.com/didi/DoraemonKit/blob/master/Doc/android_cn_guide.md
19. RxTool - android工具集
简介:
Android开发人员不得不收集的工具类集合 | 支付宝支付 | 微信支付(统一下单) | 微信分享 | Zip4j压缩(支持分卷压缩与加密) | 一键集成UCrop选择圆形头像 | 一键集成二维码和条形码的扫描与生成 | 常用Dialog | WebView的封装可播放视频 | 仿斗鱼滑动验证码 | Toast封装 | 震动 | GPS | Location定位 | 图片缩放 | Exif 图片添加地理位置信息(经纬度) | 蛛网等级 | 颜色选择器 | ArcGis | VTPK | 编译运行一下说不定会找到惊喜。
github地址:https://github.com/Tamsiree/RxTool
使用说明参考链接: https://github.com/Tamsiree/RxTool
20. PermissionsDispatcher - 基于注解权限处理
简介:
PermissionsDispatcher是一个基于注解、帮助开发者简单处理Android 6.0系统中的运行时权限的开源库。避免了开发者编写大量繁琐的样板代码。
github地址:https://github.com/permissions-dispatcher/PermissionsDispatcher
使用说明参考链接: https://www.jianshu.com/p/dd5d2e4cb353
21. RxPermissions - Android权限申请
简介:
运行权限请求库。
github地址:https://github.com/tbruyelle/RxPermissions
使用说明参考链接: https://github.com/tbruyelle/RxPermissions
22. uCrop
简介:
Android版本图片裁剪库。
github地址:https://github.com/Yalantis/uCrop
使用说明参考链接: https://github.com/Yalantis/uCrop
23. Fragmentation
简介:
功能强大的Fragment管理库。
为"单Activity + 多Fragment","多模块Activity + 多Fragment"架构而生,简化开发,轻松解决动画、嵌套、事务相关等问题。
github地址:https://github.com/YoKeyword/Fragmentation
使用说明参考链接: https://github.com/YoKeyword/Fragmentation/blob/master/README_CN.md
24. QMUI_Android
简介:
QMUI Android 的设计目的是用于辅助快速搭建一个具备基本设计还原效果的 Android 项目,同时利用自身提供的丰富控件及兼容处理,让开发者能专注于业务需求而无需耗费精力在基础代码的设计上。不管是新项目的创建,或是已有项目的维护,均可使开发效率和项目质量得到大幅度提升。
github地址:https://github.com/Tencent/QMUI_Android
使用说明参考链接: https://qmuiteam.com/android/get-started/
25. FileDownloader - 文件下载库
简介:
多任务,多线程(多连接),断点续传,高并发,使用简单,单/非单进程文件下载库。
github地址:https://github.com/lingochamp/FileDownloader
使用说明参考链接: https://github.com/lingochamp/FileDownloader/blob/master/README-zh.md
26. Calligraphy - 批量定义字体
简介:
Android批量设置字体的库。
github地址:https://github.com/chrisjenx/Calligraphy
使用说明参考链接: https://blog.csdn.net/steveyg/article/details/53309842
27. AndroidAutoSize 多分辨率适配方案
简介:
今日头条屏幕适配方案终极版,一个极低成本的 Android 屏幕适配方案
github地址:https://github.com/JessYanCoding/AndroidAutoSize
使用说明参考链接: https://github.com/JessYanCoding/AndroidAutoSize
28. glide-transformations - glide图片转换库
简介:
一个Android转换库,为Glide提供了各种图像转换。
github地址:https://github.com/wasabeef/glide-transformations
使用说明参考链接: https://github.com/wasabeef/glide-transformations
29. HomeMirror
简介:
Android 手机投屏到镜子的工具。
github地址:https://github.com/HannahMitt/HomeMirror
30. easypermissions
简介:
EasyPermissions是一个封装库,用于简化针对Android M或更高版本的系统权限逻辑。
github地址:https://github.com/googlesamples/easypermissions
使用说明参考链接: https://github.com/googlesamples/easypermissions
注解类开源库
31. butterknife
butter knife是出自JakeWharton的一个开源库,它通过注解的方式来替代android中view的相关操作。减少大量的findViewById以及setOnClickListener代码,且对性能的影响较小。
github地址:https://github.com/JakeWharton/butterknife
使用说明参考链接:https://www.jianshu.com/p/3678aafdabc7
32. androidannotations - android注解框架
简介:
AndroidAnnotations是一个能够让你快速进行Android开发的开源框架,它能让你专注于真正重要的地方。
github地址:https://github.com/androidannotations/androidannotations
使用说明参考链接: https://blog.csdn.net/zjbpku/article/details/18676149
异步操作、消息推动、和即时通讯
33. EventBus-异步消息推送
简介:
由greenrobot [1] 组织贡献(该组织还贡献了greenDAO),一个Android事件发布/订阅轻量级框架,
功能:通过解耦发布者和订阅者简化Android事件传递 [2]
EventBus可以代替Android传统的Intent,Handler,Broadcast或接口函数,在Fragment,Activity,Service线程之间传递数据,执行方法。
github地址:https://github.com/greenrobot/EventBus
使用说明参考链接:https://www.jianshu.com/p/e7d5c7bda783
34. RxAndroid-异步逻辑处理
简介:
RxAndroid源于RxJava——"a library for composing asynchronous and event-based programs using observable sequences for the Java VM“,意为“一个在Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库”。
RxAndoid在我的粗略理解中,是一个实现异步操作的库,具有简洁的链式代码,提供强大的数据变换。
github地址:https://github.com/ReactiveX/RxAndroid
使用说明参考链接: https://blog.csdn.net/u013872857/article/details/80344997
35. Telegram-即时通讯
简介:
Telegram是一款关注速度和安全性的即时通讯应用。它超快,简单,免费。这个github包含了Android Telegram应用的官方源代码。
github地址:https://github.com/DrKLO/Telegram
使用说明参考链接: https://www.jianshu.com/p/4674dd5f0861
36. Signal-Android-即时通讯
简介:
Signal是一款消息传递应用程序,用于与朋友进行简单的私人交流。
Signal使用手机的数据连接(WiFi / 3G / 4G)进行安全通信,可以选择支持纯SMS / MMS作为统一的Messenger,还可以加密手机上存储的消息。
github地址:https://github.com/signalapp/Signal-Android
使用说明参考链接: https://github.com/signalapp/Signal-Android
反编译
37. jadx
简介:
开源反编译工具,可以发dex文件或者apk反编译为java文件,支持命令行和gui。
github地址:https://github.com/skylot/jadx
使用说明参考链接:https://blog.csdn.net/weixin_33929309/article/details/87958066
38. bytecode-viewer
简介:
bytecode Viewer是一个先进的轻量级Java字节码查看器,它是一款基于图形界面的Java反编译器,Java字节码编辑器,APK编辑器,Dex编辑器,APK反编译器,DEX反编译器,Procyon Java反编译器,CFR Java反编译器,以及FernFlower Java反编译器。不仅如此,它还是一款Hex查看器,代码搜索器和代码调试器。除此之外,它还具备Smali和Baksmali等汇编器的相关功能。
github地址:https://github.com/Konloch/bytecode-viewer
使用说明参考链接: https://github.com/Konloch/bytecode-viewer
39. Apktool
简介:
反编译工具
github地址:https://github.com/iBotPeaches/Apktool
使用说明参考链接: https://blog.csdn.net/ysc123shift/article/details/52985435
Json
40. fastjson
简介:
fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。
github地址:https://github.com/alibaba/fastjson
使用说明参考链接:https://github.com/alibaba/fastjson/wiki/Quick-Start-CN
下拉刷新和滑动类开源库
41. SmartRefreshLayout - 滑动刷新layout
简介:
SmartRefreshLayout以打造一个强大,稳定,成熟的下拉刷新框架为目标,并集成各种的炫酷、多样、实用、美观的Header和Footer。 正如名字所说,SmartRefreshLayout是一个“聪明”或者“智能”的下拉刷新布局,由于它的“智能”,它不只是支持所有的View,还支持多层嵌套的视图结构。 它继承自ViewGroup 而不是FrameLayout或LinearLayout,提高了性能。 也吸取了现在流行的各种刷新布局的优点,包括谷歌官方的 SwipeRefreshLayout, 其他第三方的 Ultra-Pull-To-Refresh、TwinklingRefreshLayout 。 还集成了各种炫酷的 Header 和 Footer。
github地址:https://github.com/scwang90/SmartRefreshLayout
使用说明参考链接: https://juejin.im/entry/595db2bc6fb9a06bc7495370
42. BaseRecyclerViewAdapterHelper - 多功能RecyclerViewAdapterHelper
简介:
CymChad提供的RecyclerViewAdapter封面类库,主要提供以下功能:
- 优化Adapter代码(减少百分之70%代码)
- 添加点击item点击、长按事件、以及item子控件的点击事件
- 添加加载动画(一行代码轻松切换5种默认动画)
- 添加头部、尾部、下拉刷新、上拉加载(感觉又回到ListView时代)
- 设置自定义的加载更多布局
- 添加分组(随心定义分组头部)
- 自定义不同的item类型(简单配置、无需重写额外方法)
- 设置空布局(比Listview的setEmptyView还要好用!)
- 添加拖拽item 。
github地址:https://github.com/CymChad/BaseRecyclerViewAdapterHelper
使用说明参考链接: https://github.com/CymChad/BaseRecyclerViewAdapterHelper/blob/master/README-cn.md
43. android-Ultra-Pull-To-Refresh
简介:
超级下拉上滑组件,支持包裹所有控件。
github地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh
使用说明参考链接: https://blog.csdn.net/gaobaoshen1/article/details/52046326
44. Android-PullToRefresh
简介:
下拉上拉刷新组件。
github地址:https://github.com/chrisbanes/Android-PullToRefresh
使用说明参考链接: https://github.com/chrisbanes/Android-PullToRefresh/wiki/Quick-Start-Guide
已停止维护
自定义View
45. PhotoView
简介:
PhotoView提供一个易于使用,支持长按、多点触摸,放缩等操作的ImageView。
github地址:https://github.com/chrisbanes/PhotoView
使用说明参考链接:https://github.com/chrisbanes/PhotoView
46. CircleImageView(圆形ImageView)
简介:
快速圆形的ImageView,非常适合个人资料图像。 这基于Vince Mi的RoundedImageView,它本身基于Romain Guy推荐的技术。
github地址:https://github.com/hdodenhof/CircleImageView
使用说明参考链接: https://github.com/hdodenhof/CircleImageView
47. SlidingMenu - 侧滑菜单
简介:
一个开源的侧滑菜单控件。
github地址:https://github.com/jfeinstein10/SlidingMenu
使用说明参考链接: https://blog.csdn.net/lmj623565791/article/details/36677279
48. Android-PickerView - 多级选择器控件
简介:
Android-PickerView-类ios的选择器控件,支持时间选择和省市县三级联动选择。
github地址:https://github.com/Bigkoo/Android-PickerView
使用说明参考链接: https://github.com/Bigkoo/Android-PickerView
49. ViewPagerIndicator - ViewPager分页指示器
简介:
ViewPager的分页指示器小组件。
github地址:https://github.com/JakeWharton/ViewPagerIndicator
使用说明参考链接: https://github.com/JakeWharton/ViewPagerIndicator
50. android-gif-drawable - Gif自定义控件
简介:
Gif文件展示ImageView控件。
github地址:https://github.com/koral–/android-gif-drawable
使用说明参考链接: https://github.com/koral–/android-gif-drawable
51. Matisse - 图片视频选择器
简介:
图片和视频选择器。
github地址:https://github.com/zhihu/Matisse
使用说明参考链接: https://blog.csdn.net/qiaoshi96_bk/article/details/76164913
52. vlayout - LayoutManager扩展库
简介:
VirtualLayout是阿里最近(2017.2)开源的一个用来辅助RecyclerView的LayoutManager扩展库,通过使用里面的LayoutHelper,我们可以轻松的使用一些比较复杂的布局,如:线性布局、Grid布局、固定布局、浮动布局、栏格布局、通栏布局、一拖N布局、一拖N布局、瀑布流布局。还可以组合使用这些布局。天猫APP里面的一些商品布局就是用到这个库。
github地址:https://github.com/alibaba/vlayout
使用说明参考链接: https://blog.csdn.net/totond/article/details/70172775
53. AndroidSwipeLayout - 左右滑动菜单
简介:
AndroidSwipeLayout,顾名思义,Android平台上的滑动布局,是一个可以让我们很方便使用滑动的库,典型的应用就是侧滑删除与侧滑菜单。
github地址:https://github.com/daimajia/AndroidSwipeLayout
使用说明参考链接: https://www.jianshu.com/p/58ed0a64e9b7
54. Android-ObservableScrollView - 滚动view
简介:
Android-ObservableScrollView,顾名思义,Android上观察滚动的视图,可以监听滚动视图的滚动状态。它可以很简单地与Toolbar进行交互,并且很方便地创建Material Design的app。
github地址:https://github.com/ksoichiro/Android-ObservableScrollView
使用说明参考链接: http://blog.qiji.tech/archives/8299
55. FlycoTabLayout - 各种样式的tablayout
简介:
一个Android TabLayout库,目前有3个TabLayout。
github地址:https://github.com/H07000223/FlycoTabLayout
使用说明参考链接: https://github.com/H07000223/FlycoTabLayout
56. MaterialDesignLibrary - Material设计基础组件库
简介:
实现了android L中的各种控件效果,包括浮动操作按钮Flat Button、checkbox、进度条、开关、slider(滑杆)、对话框、颜色选择等,这完全是作者自己实现的控件,因此兼容2.2。
github地址:https://github.com/navasmdc/MaterialDesignLibrary
使用说明参考链接: http://www.see-source.com/androidwidget/detail.html?wid=255
57. AVLoadingIndicatorView - 多种loading组件
简介:
各种类型loadingView库。
github地址:https://github.com/81813780/AVLoadingIndicatorView
使用说明参考链接: https://github.com/81813780/AVLoadingIndicatorView
项目已停止维护
58. banner - 轮播组件
简介:
Android广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式、动画、轮播和切换时间、位置、图片加载框架等。
github地址:https://github.com/youth5201314/banner
使用说明参考链接: https://github.com/youth5201314/banner
59. AndroidSlidingUpPanel - 上滑托盘面板库
简介:
一个上滑式托盘面板库。
github地址:https://github.com/umano/AndroidSlidingUpPanel
使用说明参考链接: https://blog.csdn.net/u013718120/article/details/51537732
60. BottomBar - 底部导航栏组件
简介:
Material Design设计的底部导航栏自定义组件。
github地址:https://github.com/roughike/BottomBar
使用说明参考链接: https://github.com/roughike/BottomBar
已停止更新
61. DanmakuFlameMaster - 烈焰弹幕库
简介:
Android开源弹幕引擎·烈焰弹幕使 ;
bilibili开发的弹幕开源库。
github地址:https://github.com/bilibili/DanmakuFlameMaster
使用说明参考链接: https://blog.csdn.net/benhuo931115/article/details/51056646
62. MaterialViewPager - Material设计的ViewPager
简介:
Material设计使用简单的ViewPager库。
github地址:https://github.com/florent37/MaterialViewPager
使用说明参考链接: https://github.com/florent37/MaterialViewPager
63. material-components-android - material设计组件样式库
简介:
适用于Android的模块化和可自定义的Material Design UI组件样式库。
github地址:https://github.com/material-components/material-components-android
使用说明参考链接: https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md
64. cheesesquare - 新组件展示库
简介:
新的Android设计库,演示了Collapsing Toolbar、FloatingActionButton、View anchoring、NavigationView、Snackbar等组件。
github地址:https://github.com/chrisbanes/cheesesquare
使用说明参考链接: 看源码
65. StatusBarUtil - 状态栏样式
简介:
多种状态栏样式库。
github地址:https://github.com/laobie/StatusBarUtil
使用说明参考链接: https://github.com/laobie/StatusBarUtil
游戏引擎
66. libgdx
简介:
LIGBDX是基于OpenGL(ES)的跨平台Java游戏开发框架,它可在Windows、Linux、Mac OS X、Android、WebGL启用的浏览器和IOS上运行。
github地址:https://github.com/libgdx/libgdx
使用说明参考链接: http://mobile.51cto.com/aengine-421277.htm
热更新框架
67. tinker
简介:
tinker是一款腾讯开发的apk开源热更新框架,支持dex、库、资源文件的热更新。
github地址:https://github.com/Tencent/tinker
使用说明参考链接: https://github.com/Tencent/tinker
播放器
68. ExoPlayer
简介:
ExoPlayer是一个google开发的Android应用层媒体播放器,它提供了一套可替换Android MediaPlayer的API,可以播放本地或者是线上的音视频资源。ExoPlayer支持一些Android MediaPlayer不支持的特性,比如适配DASH和SmoothStreaming 的播放。和MediaPlayer不同的是,ExoPlayer很容易自定义和扩展,并且它可以通过应用商店的应用程序更新来直接更新。
github地址:https://github.com/google/ExoPlayer
使用说明参考链接:
69. GSYVideoPlayer - 视频播放器
简介:
视频播放器(IJKplayer、ExoPlayer、MediaPlayer),HTTPS,支持弹幕,支持滤镜、水印、gif截图,片头广告、中间广告,多个同时播放,支持基本的拖动,声音、亮度调节,支持边播边缓存,支持视频自带rotation的旋转(90,270之类),重力旋转与手动旋转的同步支持,支持列表播放 ,列表全屏动画,视频加载速度,列表小窗口支持拖动,动画效果,调整比例,多分辨率切换,支持切换播放器,进度条小窗口预览,列表切换详情页面无缝播放,rtsp、concat、mpeg。
github地址:https://github.com/CarGuo/GSYVideoPlayer
使用说明参考链接: https://github.com/CarGuo/GSYVideoPlayer
70. JiaoZiVideoPlayer - 多功能媒体播放器
简介:
高度自定义的开源安卓视频框架。
github地址:https://github.com/lipangit/JiaoZiVideoPlayer
使用说明参考链接: https://juejin.im/post/5cb837f1518825329f6cf300
架构
71. Android-CleanArchitecture
简介:
这是google开发的一个干净架构的简单实例代码。
github地址:https://github.com/android10/Android-CleanArchitecture
使用说明参考链接:https://blog.csdn.net/wbwjx/article/details/52724445
72. ARoute
简介:
ARouter 是阿里开源的,可以看成是 Android 平台中对页面、服务提供路由功能的中间件。
ARouter 直接翻译过来就是路由,可以用来映射页面关系,实现跳转相关的功能。在 Android 中,常被用来进行组件化通讯。
github地址:https://github.com/alibaba/ARouter
使用说明参考链接: https://www.jianshu.com/p/a57dd8c8f10e
73. MVPArms
简介:
一个整合了大量主流开源项目高度可配置化的 Android MVP 快速集成框架。
github地址:https://github.com/JessYanCoding/MVPArms
使用说明参考链接: https://github.com/JessYanCoding/MVPArms/wiki
数据库
74. greenDAO - 数据库方案
简介:
greenDAO 是一款开源的面向 Android 的轻便、快捷的 ORM 框架,将 Java 对象映射到 SQLite 数据库中,我们操作数据库的时候,不在需要编写复杂的 SQL语句, 在性能方面,greenDAO 针对 Android 进行了高度优化, 最小的内存开销 、依赖体积小 同时还是支持数据库加密。
github地址:https://github.com/greenrobot/greenDAO
使用说明参考链接: https://juejin.im/post/5959b5bcf265da6c4d1bb245
75. realm-java - 数据库方案
简介:
Realm 是一个手机数据库,是用来替代 SQlite 的解决方案,比 SQlite 更轻量级,速度更快,因为它有一套自己的数据库搜索引擎,并且还具有很多现代数据库的优点,支持 JSON,流式 API 调用,数据变更通知,自动数据同步,简单身份验证,访问控制,事件处理,最重要的是跨平台,目前已经支持 Java、Swift、Object - C、React - Native 等多种实现,今天我们就来简单的入门 Ream 数据库的使用。
github地址:https://github.com/realm/realm-java
使用说明参考链接: https://blog.csdn.net/qq_26420489/article/details/80354088
WebView
76. VasSonic - WebView加速
简介:
VasSonic是由腾讯VAS团队开发的轻量级高性能混合框架,旨在加快在Android和iOS平台上工作的网站的首屏显示。
github地址:https://github.com/Tencent/VasSonic
使用说明参考链接: https://github.com/Tencent/VasSonic/blob/master/sonic-android/README.md
App
77. PocketHub - Github android app源码
简介:
Github Android版app。
github地址:https://github.com/pockethub/PocketHub
使用说明参考链接: https://github.com/pockethub/PocketHub
Android 学习资料
78. Android_Data
简介:
Android学习资料库。
github地址:https://github.com/Freelander/Android_Data
手机插件框架及手机虚拟机
79. VirtualXposed - android手机的app虚拟环境
简介:
一个简单的应用程序,无需root用户即可使用Xposed,解锁bootloader或修改system image等。
github地址:https://github.com/android-hacker/VirtualXposed
使用说明参考链接: https://github.com/android-hacker/VirtualXposed/blob/vxp/CHINESE.md
80. VirtualAPK - android插件框架
简介:
VirtualAPK是滴滴出行自研的一款优秀的插件化框架
github地址:https://github.com/didi/VirtualAPK
使用说明参考链接: https://github.com/didi/VirtualAPK/wiki