Skip to content

Latest commit

 

History

History
250 lines (167 loc) · 17.3 KB

README.md

File metadata and controls

250 lines (167 loc) · 17.3 KB

#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容器。DragScrollDetailsLayoutDoubleScrollVIewGoodsInfoPage

    27、固定头部的、点击展开的ListView(类似QQ分组)组合效果。PinnedHeaderExpandableListView

  • 项目开发组件

    基于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

  • 插件化

    1. 个人组织维护的开源框架 Small

    框架特点是:小、轻量

    1. 任玉刚个人开源的学习型插件化项目 dynamic-load-apk

    特点:功能简单,适合学习动态加载、插件化原理

    1. 滴滴公司开源的插件化框架,应该是目前功能最强的一个框架。 VirtualAPK
    2. 插件化涉及到的知识点讲解。LiujiaqiAndroid
  • React Native
    1、Facebook官方开源项目react-native

    Facebook官方的开源项目,用于学习跟进React Native的技术进展。

    2、GitHubPopular

    用来查看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-architecture

    Google官方开源的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、

Python

1、廖雪峰的python教程,实战源码awesome-python3-webap

需配合廖雪峰的python教程使用。用于学习python,理解后台服务器运行原理。

2、微信《跳一跳》Python辅助。可用来学习Python、adb和Android联调、测试。wechat_jump_game

C/C++

1、Tinyhttpd

不到500行的Http Server,可用来学习理解服务器程序的本质。练习熟悉C语。

2、

其他

1、platform_development

???????????

2、awesome

???????????

3、Vim编辑器配色方案库oh-my-zsh

4、百度网盘Python命令行客户端bypy

5、leetcode算法题答案参考leetcode