前言:
转眼间来到2017年8月份了,差不多又过去一年了,一年了我感觉我还是原地踏步,无论是项目经验还是底层的知识都很稀薄,在这个知识不断更新的时代,我也不得不一直保持学习的姿态,虽然一直在奔跑,但我乐意,我不觉得累!好吧,Android开源库,您懂多少?来一个总结归纳吧,我会不断学习与更新。
github地址(持续更新欢迎star):https://github.com/zsml2016/GitHubNotes
一、完整项目:
1. Meizhi:
gank.iounofficial client, RxJava & Retrofit. (The project is no longer activelymaintained, we have a better project:
2. ColorfulNews:
A news-reading App (MVP+Dagger2+RxJava+Retrofit2+Material Design)。
3. Douya:
开源的Material Design豆瓣客户端(A Material Design appfor douban.com)。
4. AndroidFire:
一款新闻阅读 App框架,基于 Material Design + MVP+ RxJava + Retrofit + Glide,基本涵盖了当前android端开发最常用的主流框架,基于此框架可以快速开发一个app。
5. WechatLuckyMoney
微信红包插件。
6. bilibili-android-client:
An unofficial bilibili client for android
7. Twobbble:
这是一个使用Kotlin开发的Dribbble客户端
8. BookReader:
"任阅"网络小说阅读器,实现追书推荐收藏、书籍/标签检索、模拟翻书的翻页效果、缓存书籍、日夜间模式、书签、txt/pdf/epub书籍阅读、字体/主题/亮度设置、Wifi传书等功能~
9. TodayNews:
一个仿今日头条的开源项目.
10. GithubApp:
A Github Client App with MVP architecture useDagger2, RxJava, Retrofit, Okhttp 。
11. SimpleNews:
基于Material Design和MVP的新闻客户端。
二、网络请求:
Android实现Http标准协议框架,支持缓存(提供五种缓存模式)、代理、重定向,底层可动态切换OkHttp、URLConnection。
2. retrofit:
Type-safeHTTP client for Android and Java by Square, Inc.
3.okhttp-OkGo:
OkGo - 3.0 震撼来袭,该库是基于Http协议,封装了 OkHttp的网络请求框架,比 Retrofit更简单易用,支持RxJava,RxJava2,支持自定义缓存,支持批量断点下载管理和批量上传管理功能。
4. okhttputils:
okhttp的辅助类
5. xUtils3:
androidorm, bitmap, http, view inject...
6. okhttp:
AnHTTP+HTTP/2 client for Android and java applications.
三、图片加载:
1. transferee:
一个帮助您完成从缩略图到原图无缝过渡转变的神奇组件。
2. fresco:
AnAndroid library for managing images and the memory they use.
3. picasso:
Apowerful image downloading and caching library for Android 。
4. glide:
Animage loading and caching library for Android focused on smooth scrolling.
5. glide-transformations:
An Android transformation library providing avariety of image transformations for Glide.
6. Android-Universal-Image-Loader:
Powerful and flexible library for loading,caching and displaying images on Android.
四.下拉刷新:
下拉刷新、上拉加载、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹,具有极强的扩展性,集成了几十种炫酷的Header和Footer。
2. XRefreshView:
一个万能的android下拉上拉刷新的框架,完美支持recyclerview。
3.LRecyclerView:
RecyclerView下拉刷新,自动加载更多;仿iOS侧滑Item删除菜单。
4. BreakOutToRefresh:
Play BreakOut while loading - A playable pullto refresh view using SpriteKit。
5.FunGameRefresh :
好玩的下拉刷新控件,让我们一起来回味童年。
6. CircleRefreshLayout:
a custom pull-to-refresh layout which containsa interesting animation。
7.FlyRefresh:
The Android implementation of Replace, designed by Zee Youn. I implementthis as a FlyRefresh layout. The content of the layout can be anyNestedScrollingChild, such as a RecyclerView, NestedScrollView,VerticalGridView, etc. This library can also work with NestedScrollingParent asparent, such as CoordinatorLayout.
9.TwinklingRefreshLayout:
RefreshLayout that support for OverScroll andbetter than ios.支持下拉刷新和上拉加载的RefreshLayout,自带越界回弹效果,支持RecyclerView,AbsListView,ScrollView,WebView。
10. XRecyclerView:
一个RecyclerView实现pullrefresh和loadmore featrues.you可以像标准RecyclerView一样使用它。
11. RecyclerRefreshLayout:
A pull to refresh layout for android, theRecyclerRefreshLayout is based on the SwipeRefreshLayout. support all theviews, highly customizable, code simplicity, etc
12.BGARefreshLayout-Android:
多种下拉刷新效果、上拉加载更多、可配置自定义头部广告位。
五.数据解析:
1. fastjson:
Afast JSON parser/generator for Java .
2. gson
六.依赖注解:
1. butterknife:
Bind Android views and callbacks to fields and methods.
七.数据存储:
Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivity,我们可以通过注解的方式进行绑定ui和事件。通过finalBitmap,我们可以方便的加载bitmap图片,而无需考虑oom等问题。通过finalDB模块,我们一行代码就可以对android的sqlite数据库进行增删改查。通过FinalHttp模块,我们可以以ajax形式请求http数据。详情请通过以下网址查看。
2. LitePal:
AnAndroid library that makes developers use SQLite database extremely easy.
3. DiskLruCache:
Java implementation of a Disk-based LRU cache which specifically targetsAndroid compatibility.
4. greenDAO:
greenDAO is a light & fast ORM solution forAndroid that maps objects to SQLite databases.
八.进度、加载等待、对话框:
1、BubbleSeekBar:
A beautiful Android custom seekbar, which has a bubble view withprogress appearing upon when seeking.自定义SeekBar,进度变化由可视化气泡样式呈现
2、SVProgressHUD:
SVProgressHUD For Android。
3、SmoothProgressBar:
A small Android library allowing you to have asmooth and customizable horizontal indeterminate ProgressBar。
4、 WaveLoading:
Awave-like loading drawable。
5、CircleProgress:
CircleProgress, DonutProgress, ArcProgress。
6.NiftyDialogEffects:
漂亮的模式对话框效果。
7. sweet-alert-dialog:
SweetAlert for Android, a beautiful and cleveralert dialog.
8. android-adDialog:
一个简单,强大的广告活动弹窗控件。
Some beautiful android loading drawable, can be combined with any viewas the LoadingView or the ProgressBar. Besides, some Drawable can customize theloading progress too.
15. Android-SpinKit:
Android loading animations。
16. NumberProgressBar:
A beautiful, slim Android ProgressBar.
17. MaterialProgressBar:
Material Design ProgressBar with consistentappearance。
18. MaterialLoadingProgressBar:
MaterialLoadingProgressBar provide a styledProgressBar which looks like SwipeRefreshLayout's loading indicator(support-v4v21+)。
19. material-dialogs:
A beautiful, fluid, and customizable dialogs API。
20.spots-dialog:
Android AlertDialog with moving dots progress indicator.
九.kotlin:
1. kotlin:
The Kotlin Programming Language.
十.导航 指示器:
1.ahbottomnavigation:
A library to reproduce the behavior of theBottom Navigation guidelines from Material Design.
Navigation tab bar with colorful interactions.
3. AlphaIndicatorView:
仿微信底部tab标签,滑动的时候颜色渐变,使用极其简单,只需要两行代码。
4. stepper-indicator:
用于入职的步骤指示器或简单的查看器。
5. CoordinatorTabLayout:
Combination of TabLayout andCoordinatorLayout./TabLayout和CoordinatorLayout相结合的折叠控件。
6. MagicIndicator:
A powerful, customizable and extensible ViewPager indicator framework.As the best alternative of ViewPagerIndicator, TabLayout andPagerSlidingTabStrip ——强大、可定制、易扩展的ViewPager指示器框架。是ViewPagerIndicator、TabLayout、PagerSlidingTabStrip的最佳替代品。支持角标,更支持在非ViewPager场景下使用(使用hide()、show()切换Fragment或使用setVisibility切换FrameLayout里的View等)
7. FlycoTabLayout:
An Android TabLayout Lib。
十一.搜索框:
1. PersistentSearch:
A clone of the Google Now/Maps/Play persistent search bar。
2. floatingsearchview:
A search view that implements a floating searchbar also known as persistent search。
3. IconCenterView:
a iOS-Style search bar in Android。
4. MaterialSearchBar:
Material Design Search Bar for Android。
5. SearchDialog:
仿bilibili搜索框效果(三句代码实现)。
十二.工具类:
1. AndroidHttpCapture:
AndroidHttpCapture网络诊断工具是一款Android手机抓包软件主要功能包括:手机端抓包、PING/DNS/TraceRoute诊断、抓包HAR数据上传分享。你也可以看成是Android版的"Fiddler" (^o^)/~。
2. Condom:
一个超轻超薄的Android工具库,阻止三方SDK中常见的有害行为,而不影响应用自身的功能。(例如严重影响用户体验的『链式唤醒』)。
3. android-utils:
It contains most of the Android utility classes.
4.AndroidDevTools:
收集整理Android开发所需的Android SDK、开发中用到的工具、Android开发教程、Android设计规范,免费的设计素材等。
5. androidscreen:
android screen是一个基于Java开发的工具,目的是帮助android开发者生成多屏幕适配的配置文件,减少开发难度。
6.TinyPinyin:
适用于Java和Android的快速、低内存占用的汉字转拼音库。
7. packer-ng-plugin:
下一代Android打包工具,100个渠道包只需要10秒钟 。
8. walle:
Android Signature V2 Scheme签名下的新一代渠道包打包神器。
9.leakcanary:
A memory leak detection library for Android andJava.
10. AutoInstaller:
应用自动静默更新安装库.
11. AndroidUtilCode:
Android developers should collect the following utils(updating)。
12. baseAdapter:
Android 万能的Adapter forListView,RecyclerView,GridView等,支持多种Item类型的情况。
13. RxDownload:
基于RxJava打造的下载工具,支持多线程下载和断点续传,智能判断是否支持断点续传等功能。
十三.广告轮播:
1. banner:
Android广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式、动画、轮播和切换时间、位置、图片加载框架等!
2. AndroidImageSlider:
An amazing and convenient Android image slider.
十四.欢迎向导:
1. XhsWelcomeAnim:
小红书欢迎引导第二版。
2. WoWoViewPager:
结合ViewPager和动画来提供一种创建应用程序指南页面的简单方法。
3. ShowcaseView:
Highlight the best bits of your app to users quickly, simply, andcool...ly。
4. MaterialShowcaseView:
A Material Design themed ShowcaseView forAndroid。
5. Highlight:
一个用于app指向性功能高亮的库。
6. GuideView:
最最轻量级的新手引导库,能够快速为任何一个View创建一个遮罩层,支持单个页面,多个引导提示,支持为高亮区域设置不同的图形,支持引导动画,方便扩展,良好支持fragment。
十五.动画渲染:
1. android-activityAnim:
五种实现activity动画切换的方式。
2. ParticleTextView:
一个用粒子动画显示文字的 Android自定义 View。
3. animate:
Anapplication demoing meaningful motion on Android。
4. AndroidViewAnimations:
可爱视图动画收藏。
5. LTMorphingLabel:
Graceful morphing effects for UILabel written in Swift.
6. HTextView:
Animationeffects to text, not really textview。
7. Material-Animations:
Android Transition animations explanation withexamples.
8. FloatingView:
FloatingView can make the target view floating above the anchor viewwith cool animation.
十六 . Android复习面试:
1. android-interview-questions:
一个老外总结的-Android的面试问题
2. android-interview-questions-cn :
由国内大神stormzhang组织的-最全面的高质量Android面试指南。
3. ResumeSample:
Resumetemplate for Chinese programmers .程序员简历模板系列。包括PHP程序员简历模板、iOS程序员简历模板、Android程序员简历模板、Web前端程序员简历模板、Java程序员简历模板、C/C++程序员简历模板、NodeJS程序员简历模板、架构师简历模板以及通用程序员简历模板。
4. android-skill-summary:
Android技能总结,各种基础和进阶内容的资料收集。
5. LearningNotes:
Enjoy Learning.比较系统的学习笔记。
十七 . Android多媒体:
1. VCameraDemo:
微信小视频+秒拍,FFmpeg库封装。
2. android-UniversalMusicPlayer:
This sample showshow to implement an audio media app that works across multiple form factors andprovide a consistent user experience on Android phones, tablets, Auto, Wear andCast devices。
3. PLDroidPlayer:
PLDroidPlayer 是 Pili直播 SDK的安卓播放器。支持所有直播常用的格式,如:RTMP、HLS、FLV。拥有优秀的功能和特性,如:首屏秒开、追帧优化、丰富的数据和状态回调、硬解软解支持。而且可以根据自己的业务进行高度定制化开发。
4. PLDroidShortVideo:
PLDroidShortVideo是七牛推出的一款适用于 Android平台的短视频 SDK,提供了包括美颜、滤镜、水印、断点录制、分段回删、视频编辑、混音特效、本地/云端存储在内的多种功能,支持高度定制以及二次开发。
5. video-live :
视频直播。
6. barcodescanner :
适用于Android的条形码扫描程序库。
7. BGAQRCode-Android :
QRCode 扫描二维码、扫描条形码、相册获取图片后识别、生成带 Logo二维码、支持微博微信 QQ二维码扫描样式。
8. GSYVideoPlayer :
视频播放器(IJKplayer),HTTPS支持,支持弹幕,支持基本的拖动,声音、亮度调节,支持边播边缓存,支持视频本身自带rotation的旋转(90,270之类),重力旋转与手动旋转的同步支持,支持列表播放,直接添加控件为封面,列表全屏动画,视频加载速度,列表小窗口支持拖动,5.0的过场效果,调整比例,多分辨率切换,支持切换播放器,进度条小窗口预览,其他一些小动画效果,rtsp、concat、mpeg。
9.ijkplayer :
基于FFmpegn3.3的Android / iOS视频播放器,支持MediaCodec,VideoToolbox。
10. VideoListPlayer :
Playvideo in ListView or RecyclerView。
11. JieCaoVideoPlayer :
AndroidVideoPlayer MediaPlayer VideoView MediaView Float View And Fullscreen。
12. UniversalVideoView :
Abetter Android VideoView with more Media Controller customization.一个更好用的Android VideoView.
十八 . 选择器:
1. MaterialDateTimePicker :
在Android上选择日期或时间:
2. DatePicker :
Usefuland powerful date picker for android。
3. WheelPicker :
Simpleand fantastic wheel view in realistic effect for android.
4. TakePhoto :
一款用于在Android设备上获取照片(拍照或从相册、文件中选择)、裁剪图片、压缩图片的开源工具库。
5. CharacterPickerView :
可实现三级联动的选择器,高仿iOS的滚轮控件,字体大小自适应。
6. android-zxingLibrary :
几行代码快速集成二维码扫描功能
7. AndroidPicker :
安卓选择器类库,包括日期选择器、时间选择器、单项选择器、双项选择器、城市地址选择器、车牌号选择器、数字选择器、星座选择器、生肖选择器、颜色选择器、文件选择器、目录选择器等,可自定义顶部及底部界面,可自定义窗口动画……
8. Android-FilePicker :
Photopickerand document picker for android。
9. SuspensionIndexBar :
仿美团选择城市、微信通讯录、饿了么点餐列表的导航悬停分组索引列表。
10. Android-PickerView :
Thisis a picker view for android , support linkage effect, timepicker andoptionspicker.(时间选择器、省市区三级联动)。
十九 . UI扩展:
1. AndroidSwipeLayout :
The Most Powerful Swipe Layout!
2. BezierMaker :
通过de Casteljau算法绘制贝塞尔曲线,并计算它的切线,实现1-7阶贝塞尔曲线的形成动画。
3. cropiwa :
适用于Android的可配置自定义裁剪窗口小部件。
4. SlideSwitch :
A widget you can slide it to open or close something。
5. ExpandableTextView :
Android's TextView that can expand/collapselike the Google Play's app description。
6. XCL-Charts :
Android图表库(XCL-Charts is a freecharting library for Android platform.),基于AndroidCanvas来绘制各种图表,使用简便,定制灵活。目前支持3D/非3D/背向式/横向/竖向柱形图(BarChart)、3D/非3D饼图(PieChart)、堆叠图(Stacked Bar Chart)、面积图(Area Chart)、折线图(Line Chart)、曲线图(Spline Chart)、环形图(DountChart)、南丁格尔玫瑰图(RoseChart)、仪表盘(Dial Chart)、刻度盘(Gauge Chart)、雷达图(Radar Chart)、漏斗图(FunnelChart)、圆形图。
7. GridPasswordView :
An android password view that looks like the pay password view in wechatapp and alipay app.
8. BiuEditText :
biu,biu,一个有趣的EditText。
9. android-card-slide-panel :
使用户能够顺利,连续地向左或向右滑动卡片。
10. Jgraph :
一个视觉效果还不错的图表控件。
11. SwipeStack :
Asimple, customizable and easy to use swipeable view stack for Android.
12. MultiImageSelector :
仿微信实现多图选择。支持单选和多选两种模式
13. SwitchButton :
SwitchButton.Anbeautiful+lightweight+custom-style-easy switch widget for Android,minSdkVersion>= 11
14. StickyHeaderListView :
打造炫酷列表之StickyHeaderListView:标题渐变、吸附悬浮、筛选分类、动态头部等。
15. PhotoView :
图片浏览缩放控件。
16. ImageSelector :
Android图片选择器。充分自由定制,极大程度简化使用,支持图库多选/图片预览/单选/照片裁剪/拍照/自定义图片加载方式/自定义色调/沉浸式状态栏。
17. HwTxtReader :
轻量级Txt阅读器组件,支持windows下的常见几种编码格式,使用翻页阅读。
18. PullZoomView :
Android自定义ListView和ScrollView,可以放大。
19. Space-Navigation-View :
SpaceNavigation is a library allowing easily integrate fully customizable GoogleSpaces like navigation to your app.
20. CoordinatorTabLayout :
Combinationof TabLayout and CoordinatorLayout./TabLayout和CoordinatorLayout相结合的折叠控件。
21. PopsTabView :
PopsTabView是个filter容器,他可以快速,构建不同筛选样式,自由组合PopWindow成一组tab.
22. android_radiogroup_MutilRadioGroup :
androidmultiform RadioGroup:复杂样式的单选框,自定义RadioGroup实现radiobutton多行多列嵌套在各种布局中排列布局。
23. SwipeCardView :
一个带渐变层叠动画的左右滑动效果(类似于探探、tinder)。
24. FlowLayout :
Android流式布局,支持单选、多选等,适合用于产品标签等。
25. BottomBar :
Acustom view component that mimics the new Material Design Bottom Navigationpattern.
26. ZLayoutManager :
ome custom LayoutManager .Such as SwipeCard、FLowLayout。一些自定义的LayoutManager,仿探探、人人影视炫动滑动卡片层叠和流式布局等。
27. BGAAdapter-Android :
在AdapterView和 RecyclerView中通用的 Adapter和ViewHolder。RecyclerView支持 DataBinding、多种 Item类型、添加 Header和 Footer。RecyclerView竖直方向通用分割线 BGADivider。
28. BGABadgeView-Android :
Android徽章控件。
29. StepView :
Step by step,justuse HorizontalStepView,VerticalStepView.step indicator,flow indicator,timeline,orderprocess,express status。
30. FloatingActionButton :
FloatingActionButton:AndroidFloating Action Button based on Material Design specification。
31. FloatingActionButton :
Android floating action button
32. EasyRecyclerView :
将开发中常用的RecyclerView的各种需求封装进库。提升开发效率。
33. ScrollTextView :
Android跑马灯式文字滚动。
34. SwitchButton :
Acute widget of Switch Button for you to create beautiful and friendly UI.
35. androidWheelView :
仿照iOS的滚轮控件,从请吃饭apk反编译出来的。
36. NineGridView :
类似QQ空间,微信朋友圈,微博主页等,展示图片的九宫格控件,自动根据图片的数量确定图片大小和控件大小,使用Adapter模式设置图片,对外提供接口回调,使用接口加载图片,支持任意的图片加载框架,如 Glide,ImageLoader,Fresco,xUtils3,Picasso 等,支持点击图片全屏预览大图。
37. SwipeBack :
SwipeBackis an android library that can finish a activity by using gesture.
38. RecyclerViewCardGallery :
RecyclerView实现Card Gallery效果,替代ViewPager方案。
39. InfiniteCycleViewPager :
Infinitecycle ViewPager with two-way orientation and interactive effect.。
40. CountdownView :
AndroidCountdown View。
41. CircleImageView :
Acircular ImageView for Android。
42. SwipeDelMenuLayout :
Themost simple SwipeMenu in the history, 0 coupling, support any ViewGroup. Stepintegration swipe (delete) menu, high imitation QQ, iOS. ~史上最简单侧滑菜单,0耦合,支持任意ViewGroup。一步集成侧滑(删除)菜单,高仿QQ、IOS。~
43. PhotoView :
Implementationof ImageView for Android that supports zooming, by various touch gestures.
二十 . 热修复:
1. tinker :
Tinker是Android的热修复解决方案库,它支持dex,库和资源更新,无需重新安装apk。
二十一 . 科学上网:
1. lantern :
蓝灯
2. hosts:
最新可用的googlehosts文件。
二十 二. 其他:
1. JKeyboardPanelSwitch :
Forresolve the layout conflict when keybord & panel are switching (Android键盘面板冲突布局闪动处理方案).
2. MagicaSakura :
MagicaSakura是 Android多主题框架。~ isan Android multi theme library which supporting both daily colorful theme andnight theme.
3.folding-cell-android :
FoldingCellis a material design expanding content cell inspired by folding paper material。
4. ILOVEYOU :
青春总会因为一个人开始闪闪发亮!
5. awesome-android-tips :
somecode tips in android 。
6. RxJavaSamples :
RxJava和 Retrofit结合使用的几个最常见使用方式举例。
7.android-slidingactivity :
可让您从活动中向下滑动以关闭它。
8. awesome-android-ui :
精美的AndroidUI / UX库列表
9.AndroidSdkSourceAnalysis :
android sdk源码解析——旨在帮助Android开发者更好的学习Android!我们只是一群普通的程序员,但是,我们热爱分享,想热热闹闹的玩点有意义的事!如果你也想陪我们一起愉快的玩耍,欢迎加入我们!Issues认领分析文章!
10. android-open-project :
Acategorized collection of Android Open Source Projects。
11. Android:
GitHub上最火的Android开源项目,所有开源项目都有详细资料和配套视频。
12.my-git:[](https://github.com/xirong/my-git)
Individual collecting material of learning Git(有关 git的学习资料)。
13. gitignore :
Acollection of useful .gitignore templates。(有用的.git忽视模板的集合)
14. Colorful :
基于Theme的Android动态换肤库,无需重启Activity、无需自定义View,方便的实现日间、夜间模式。
15. Android-Skin-Loader :
一个通过动态加载本地皮肤包进行换肤的皮肤框架。
16. DanmakuFlameMaster :
Android开源弹幕引擎·烈焰弹幕使~
17. DylanStepCount :
Android精准计步器。
18. Android-Plugin-Framework:
Android插件框架,免安装运行插件APK,支持独立插件和非独立插件。
19. shopcar:
仿饿了么购物车。
20. zxing:
Official ZXing ("Zebra Crossing") project home。
21. html-textview :
TextViewto display simple HTML content。
22. EventBus :
Android optimized eventbus that simplifies communication between Activities, Fragments, Threads,Services, etc. Less code, better quality.