#Github项目整理 ##star项目 ###Android相关
-
控件
1、通用下拉刷新CommonPullToRefresh在android-Ultra-Pull-To-Refresh的基础上进行优化扩展,支持更多列表控件,支持自定义header和footer。
2、Android常用加载动画AVLoadingIndicatorView
主要用于下拉刷新及简单的界面加载展示,效果全部通过Canvas绘制,不涉及图片加载。可用于学习理解Canvas的使用。
3、RecylerView常用效果合集LRecyclerView
集成了RecyclerView常用的功能,包括下拉刷新、添加Header和Footer、固定悬浮头、侧滑删除等。值得学习。
4、Android形变动画/加载动画android-shapeLoadingView
高仿58的加载动画,菱形、三角形、圆形的形变动画。
5、带侧滑删除的RecyclerViewSwipeRecyclerView
支持横向、竖向的ListView、Grid、StaggeredGrid四种全部形式的侧滑,主要是对itemview的自定义,不涉及RecyclerView的太多修改。解决了与Viewpager嵌套的冲突。
6、Design支持库的简单使用DesignSupportLibrarySample
Android Design Support Library使用入门介绍。包括NavigationDrawer、CoordinatorLayout、SearchView、Toolbar、CollapsingToolbarLayout和BottomNavigation等一些列控件的使用。
7、Android酷炫UI控件合集awesome-android-ui
各种UI效果的实现,涉及Material、Dialog、Parallax、Button、Progress等。
8、左滑返回SwipeBackLayout
Android App仿IOS左滑返回的控件。
9、RecyclerView的动画合集recyclerview-animators
实现了比较多的RecyclerView的item动画,可用于学习,也可以直接copy到项目中使用。
10、卡片滑动飞出动效控件android-card-slide-panel
仿探探首页的卡片滑动飞出动画效果的自定义控件。基本自能用来学习,项目本身的可拓展性不强。如需使用,需做许多修改。
11、通用下拉刷新android-Ultra-Pull-To-Refresh
一个自定义的通用下拉刷新控件,可扩展性极强!强烈推荐学习。
12、底部tab控件,配合ViewPager使用,material design设计风格ahbottomnavigation
13、ReclerView的简单封装,包括下拉刷新、上拉加载更多、添加header。XRecyclerView
14、复杂的ReclerView布局管理器。阿里开源,可用来快速实现复杂的电商首页布局。vlayout
15、目前最好用最强大的下拉刷新、上拉加载更多的框架。值得研究学习,也可以直接集成到项目中使用。SmartRefreshLayout
16、功能很强大效果很酷炫的扩展版TextView。SuperTextView
17、四种方式实现毛玻璃效果(图片高斯模糊)。ImageBlurring
18、微信开发人员个人开源的微信键盘/表情面板切换优化方案。JKeyboardPanelSwitch
19、Banner效果的快速实现。有时间可以了解下其中的一些技术细节。Android-ConvenientBanner
20、字体图片库。使用TextView来加载图标icon,具有图标放大不变性,减少体积等特点。android-iconify
21、爱彼迎开源的动画框架。据说很强大,非常值得研究学习,至少应该先学会怎么使用。lottie-android
22、系统bar包括状态栏和导航栏的着色工具库,支持4.4及以上,适配了小米和魅族。FlycoSystemBar
23、常用的自定义View和第三方类库,带效果图。CommonUILibrary
24、常用的UI效果实现,有效果图。UIUtil
25、使用Behavior实现类似于知乎标题栏、导航栏、悬浮按钮的联动动画。LBehavior
26、三个仿京东、淘宝、蘑菇街详情页的嵌套滚动类自定义View容器。DragScrollDetailsLayout、DoubleScrollVIew、GoodsInfoPage
27、固定头部的、点击展开的ListView(类似QQ分组)组合效果。PinnedHeaderExpandableListView
-
项目开发组件
- 网络请求框架okhttp-OkGo
基于OkHttp,支持RxJava
- 高性能数据库orm框架,建议配合stetho-realm工具使用。realm-java
- 高性能hybird框架。腾讯开源,优化webview,大大提高了H5加载速度。VasSonic
- 优化过的非常好用的Fragment,可以用来实现单Activity+多Fragment的项目架构。Fragmentation
- MVP构架模式快速集成开发框架。MVPArms
- 项目组件化凯苏继承开发框架。有时间需要研究下其中的组件分离等技术实现方案。ArmsComponent
- RxJava生命周期管理库。RxLifecycle
-
热修复
1、阿里开源的热修复框架AndFix功能十分有限,仅用于修复method,无法对资源文件等的修复替换。
2、热修复从原理到实现Android-hot-fix
该项目列举了热修复所涉及的Ant打包脚本、MultiDex分包架构和动态加载不定.dex文件的原理相关博客,并参考Nuwa热修复框架给出了具体实现方案。
3、微信开源热修复框架tinker
-
插件化
- 个人组织维护的开源框架 Small
框架特点是:小、轻量
- 任玉刚个人开源的学习型插件化项目 dynamic-load-apk
特点:功能简单,适合学习动态加载、插件化原理
- 滴滴公司开源的插件化框架,应该是目前功能最强的一个框架。 VirtualAPK
- 插件化涉及到的知识点讲解。LiujiaqiAndroid
-
React Native
1、Facebook官方开源项目react-nativeFacebook官方的开源项目,用于学习跟进React Native的技术进展。
用来查看GitHub最受欢迎与最热项目的App。基于React Native,开源。
-
构建打包等项目工具
- 快速打渠道包工具 packer-ng-plugin
- 内存泄漏检测工具 leakcanary
- 可视化调试工具。facebook开源,可以很方便的实时可视化查看手机内存、数据库等的调试工具 stetho
- Android脱壳工具,需要xposed支持。dumpDex
-
其它工具
1、Mars腾讯开源的微信官方的跨平台跨业务的终端基础组件。针对移动网络特点而开发的网络层框架。可作为C/C++语言学习项目,也可用来学习优化Android App网络交互。
2、Android ADB命令大全 ADB 用法大全
各种各样的adb调试命令,Android开发/测试不可替代的强大工具。
3、Android开发者相关网站汇总Android-Dev-Favorites
汇集了Android开发相关的各种学习网站。包括blog、公众号、知名大神、社区论坛等。
4、Android工具类代码合集AndroidUtilCode
整理了各种各样的通用类工具型代码片段,如File、Log、Phone、Network、拼音、正则匹配、富文本等。
5、Android知识点Point-of-Android
Android开发中所涉及的一些比较中高级的知识点,包括异步任务机制、进程/线程间通讯、OOM、事件分发、Android底层及Linux等
6、Android知识点大全LearningNotes
涉及到Android开发各种各样的知识点、JAVA基础、设计模式、数据结构和算法和面试经验等。
7、国内面试题库AndroidInterview-Q-A
收集整理了来自百度、小米、乐视、美团、58、360等国内一些互联网公司内部的面试题库。
8、Android学习资料Android_Data
收集了Android开发的学习资料,包括书籍、工具、博客、素材库等等。
9、Android开源项目汇总android-open-project
分类整理了大部分的Android开源项目。并对其中部分项目进行了源码解析。
10、Android开源项目及库TimLiu-Android
各种Android开源库,包括UI、网络相关、图片加载、数据库、音视频、热更新、插件等,还有技术博客之类。
11、App保活MarsDaemon
一个小型库,可以让app常驻后台不被杀死。项目作者称能适配多种环境,实际应用中有不少手机型号不合适。具体可参看项目Issues。
12、Android工具集合AndroidToolbox
一个Android工具类库,包含许多开发中常用到的工具类和方法。
13、个人总结的安卓学习笔记。自定义View系列文章很经典,需要多看多理解。AndroidNote
13、树莓派官方资料文档raspberrypi/documentation
14、树莓派各型号全部镜像合集awesome-raspberry-pi
15、技术面试需要掌握的基础知识整理。包括算法、操作系统、网络、数据库、分布式、面向对象等。Interview-Notebook
16、面试知识点资料整理。interviews
17、多人协作的开源项目:Android系统源码解读。BeesAndroid
18、Java设计模式。java-design-patterns
19、Android RxJava学习资料。包括入门、原理、操作符、实际应用开发等一系列教程文章。RxJava_Util
20、Android学习资源,包括博客博文、知名开发者、开发社区、网站等。Android-Learning-Resources
21、Android基础知识、进阶知识、面试相关资料总结。AndroidNote
22、个人写的的Android Framework曾源码解析,目前好像已经停止维护。androidSource
23、翻译国外Android优质技术、开源库、软件架构设计、测试等文章的开源项目。目前已停止维护。android-tech-frontier
24、Android开发工具类集合。包括支付、分享、压缩、UCrop选择圆形头像、二维码和条形码的扫描与生成、定位、图片缩放等等。RxTools
-
demo
1、Google MVP架构android-architectureGoogle官方开源的Android架构指导,设计mvp、mvp-loaders、mvp-databinding、mvp-clean、mvp-dagger、mvp-contentproviders、vmp-rxjava以及mvvm-databinding等。
2、Google NDK Demoandroid-ndk
作为Android NDK开发入门的学习项目,可用来配合练习使用C/C++开发Android应用。
3、Android DemosDemos
一些技术blog里demo的合集,没事了可以看看。有QQ交流群。
4、Gand客户端GanK
一款Gank app,主要涉及到沉浸式状态栏的实现、APP换肤策略、自定义3D侧滑菜单等技术。
5、MVP应用入门androidmvp
以登录场景为例,实现app的MVP架构模式开发。可用来学习MVP项目如何分包、M V P三层之间的持有调用关系以及命名规范。
6、Android自定义相册GalleryFinal
实现了拍照、图片单选/多选、裁剪、旋转,可自由配置图片加载类库,功能可配置,主题样式可配置。对不同手机型号的兼容适配做了相应处理。
7、小说阅读器。可以用来参考了解模拟翻页效果怎么实现,以及如何加载文字等自定义View的实现。BookReader
8、六种方法判断App位于前台或者后台。最后一种可以突破Android5.0以上的权限封锁。AndroidProcess
9、来疯手机安卓视频直播开源项目,纯Java编写。SopCastComponent
- 百度 阿波罗自动驾驶 apollo
- NASA 阿波罗11号制导部分开源代码Apollo-11
- 阿里巴巴 路由框架 ARouter
作用:电商活动页面动态下发,以及组件化开发
- square IO优化库okio
- square restful风格网络封装库retrofit
- square 网络请求库okhttp
- linux内核开发项目linux
- google 人工智能开发框架 tensorflow
- bumptech google推荐使用的图片加载框架。源码非常优秀,值得学习。glide
- FFmpeg 视频编解码库FFmpeg
- freebsd linux系统开源项目freebsd
- ReactiveX RxJava
1、Gradle Android Plugin中文版使用手册Gradle-Android-Plugin
可以用来学习如何Android Studio构建项目,了解Gradle语法。
2、免费编程书籍free-programming-books
各种各样的编程相关的电子书及资料
3、Android架构文章合集AndroidArchitectureCollection
收集了关于MVP、MVVP架构的文章及相应实例,以及一些架构相关的技术讨论话题、博客等。
4、利用Python进行数据分析 第二版(2017)中文翻译笔记pydata-notebook
5、
1、廖雪峰的python教程,实战源码awesome-python3-webap
需配合廖雪峰的python教程使用。用于学习python,理解后台服务器运行原理。
2、微信《跳一跳》Python辅助。可用来学习Python、adb和Android联调、测试。wechat_jump_game
不到500行的Http Server,可用来学习理解服务器程序的本质。练习熟悉C语。
2、
???????????
2、awesome
???????????
3、Vim编辑器配色方案库oh-my-zsh
4、百度网盘Python命令行客户端bypy
5、leetcode算法题答案参考leetcode