整理总结开发中,常用的开源框架。
Android常用工具库
Blankj/AndroidUtilCode
https://github.com/Blankj/AndroidUtilCode
Android投屏软件
Genymobile/scrcpy
在电脑显示手机画面并对手机进行控制的工具
https://github.com/Genymobile/scrcpy/blob/master/README.zh-Hans.md
参考文档
scrcpy——Android投屏神器(使用教程)
https://blog.csdn.net/was172/article/details/99705855
UI框架
XUI
一个简洁而优雅的Android原生UI框架,解放你的双手!
https://github.com/xuexiangjys/XUI
QMUI_Android
提高 Android UI 开发效率的 UI 库
https://github.com/Tencent/QMUI_Android
官网 https://qmuiteam.com/android
RadiusView
https://github.com/AriesHoo/RadiusView
Android 实现一个用于需要圆角矩形框背景的TextView或Layout的情况,减少直接使用时引入的shape资源文件,包括RadiusTextView,RadiusEditText,RadiusLinearLayout,RadiusRelativeLayout,RadiusFrameLayout,RadiusCheckBox,RadiusRadioButton,主要有圆角控制、默认背景(边框线)、按下背景(边框线)、不可点击背景(边框线)、选择selected背景(边框线)、选中checked背景(边框线);全圆角、四角单独设置圆角功能
1.1.0以后版本由UIWidget维护,不做更新
UIWidget
https://github.com/AriesHoo/UIWidget
https://gitee.com/AriesHoo/UIWidget
一个集成TabLayout、UIAlertDialog、UIActionSheetDialog、UIProgressDialog、TitleBarView(自带沉浸式标题栏)、CollapsingTitleBarLayout、RadiusView(圆角及状态背景设置View解放shape文件)、KeyboardHelper(软键盘控制及遮挡控制类)、StatusViewHelper(状态栏沉浸帮助类)、NavigationViewHelper(导航栏沉浸式帮助类)、AlphaViewHelper(View透明度控制帮助类) 等项目常用UI库。
更多效果详见项目地址 >>> https://github.com/AriesHoo/UIWidget
加载动画
AVLoadingIndicatorView
项目地址:https://github.com/81813780/AVLoadingIndicatorView
参考文档
【FastDev4Android框架开发】非常漂亮的进度指示器AVLoadingIndicatorView的使用讲解(十八)
Android View点击特效
TouchEffects
https://github.com/chendeqiao/TouchEffects
TouchEffects能够帮助你更快速方便的增加点击时候的效果,TouchEffects的目标是打造一个稳定、全面、且能更方便的自定义及个性化的一款点击效果框架。
功能特点
- 只需要几行代码便能为全局的View加上点击效果
- 支持多种点击效果
- 支持个性化设置
- 支持View的独立效果
效果支持
- Scale(点击缩放)
- Ripple(点击水波纹)
- Ripple_1(点击水波纹1)
- State(点击渐变)
- Shake(触碰抖动,用于不可点击时的反馈)
弹框PopupWindow
BasePopup
https://github.com/razerdp/BasePopup
https://gitee.com/swjt-hy/BasePopup#https://www.kancloud.cn/razerdp/basepopup/content
一款针对系统PopupWindow优化的Popup库,功能强大,支持背景模糊,使用简单,你会爱上他的~
特性
- 本库作为基类,对您的实现没有任何干预,再也不需要担心实现某些方法的时候被Api限制了
- 无需头疼如何计算offset来进行位置控制,只需要简简单单的设置Gravity便能随心所欲的控制您的Popup
- 无论是Animation还是Animator,只需要跟您平时一样写动画,就可以完成Popup的动效设计了,不需要xml不需要关心别的兼容性问题
- 背景与主体分离,无论是背景模糊,亦或是背景颜色,甚至把背景换成您的View,都可以通过简单的设置完成,主体与背景隔离,不用担心事件的问题
- 还在为Popup的触摸事件头疼吗?BasePopup帮你解决烦恼~返回键控制、外部点击透传、点击外部是否消失都只需要您动动手指头完成配置即可
- PopupWindow自动锚定AnchorView,滑动到屏幕外自动跟随AnchorView消失,不需要复杂的逻辑设置,只需要通过linkTo方法告诉BasePopup即可帮您完成
- 简单的PopupWindow不想新建一个类,希望拥有链式调用?没问题,QuickPopupBuilder为此而生,相信你会越用越爱~
参考文档
【android学习开源项目之BasePopup】BasePopup(PopupWindow)进行二次封装
Android智能下拉刷新框架
SmartRefreshLayout
https://github.com/scwang90/SmartRefreshLayout
https://gitee.com/scwang90/SmartRefreshLayout
下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。
特点功能
- 支持多点触摸
- 支持淘宝二楼和二级刷新
- 支持嵌套多层的视图结构 Layout (LinearLayout,FrameLayout…)
- 支持所有的 View(AbsListView、RecyclerView、WebView…View)
- 支持自定义并且已经集成了很多炫酷的 Header 和 Footer.
- 支持和 ListView 的无缝同步滚动 和 CoordinatorLayout 的嵌套滚动 .
- 支持自动刷新、自动上拉加载(自动检测列表惯性滚动到底部,而不用手动上拉).
- 支持自定义回弹动画的插值器,实现各种炫酷的动画效果.
- 支持设置主题来适配任何场景的 App,不会出现炫酷但很尴尬的情况.
- 支持设多种滑动方式:平移、拉伸、背后固定、顶层固定、全屏
- 支持所有可滚动视图的越界回弹
- 支持 Header 和 Footer 交换混用
- 支持 AndroidX
- 支持横向刷新
SQLite数据库
greenDAO
https://github.com/greenrobot/greenDAO
GreenDaoUpgradeHelper
GreenDaoUpgradeHelper是一个greenDao的数据库升级帮助类。使用它可以很容易解决数据库升级问题:数据库升级丢失旧数据。
https://github.com/yuweiguocn/GreenDaoUpgradeHelper/blob/master/README_CH.md
SQLite数据库调试工具
Android-Debug-Database
https://github.com/amitshekhariitbhu/Android-Debug-Database
Android调试数据库是一个强大的库,用于调试Android应用程序中的数据库和 shared preferences 共享数据。
Android Debug Database允许你以一种非常简单的方式直接在浏览器中查看数据库和 shared preferences 共享数据。