Android 学习资源汇总-GitHub篇

罗列一些收集到的学习资源。
主要是在 github 上面的开源库、开源项目、插件等等。

开源库

  • AR / VR

    1. arcore-android-sdk

      Google ARCore SDK for Android Studio.

    2. gvr-android-sdk

      Google VR SDK for Android.

  • 相机 / 图片

    1. uCrop

      Image Cropping Library for Android.
      图片裁剪库。

    2. RxGalleryFinal

      Android图片单选/多选、拍照、裁剪、压缩。视频选择和录制。

    3. PictureSelector

      多图片选择器。

    4. material-camera

      一款封装后的相机库。

    5. TakePhoto

      一款用于在Android设备上获取照片(拍照或从相册、文件中选择)、裁剪图片、压缩图片的开源工具库。

    6. Matisse

      Matisse is a well-designed local image and video selector for Android.

    7. CompressHelper

      压缩文件,压缩图片,压缩Bitmap。

    8. Luban

      Android 图片压缩工具,仿微信朋友圈压缩策略。

  • 音视频

    1. JiaoZiVideoPlayer

      Android VideoPlayer MediaPlayer VideoView MediaView Float View And Fullscreen.
      一款可以快速继承的视频播放库。

  • UI 控件

    1. SmartTabLayout

      A custom ViewPager title strip which gives continuous feedback to the user when scrolling.
      与 viewPager 联用的 tab view。

    2. bottomsheet

      Android component which presents a dismissible view from the bottom of the screen.
      底部弹出的一个自定义 view。

    3. WenldBanner

      一款商业级Banner控件。

    4. AndroidRuler

      android自定义尺子收集demo。

    5. BooheeRuler

      仿写薄荷健康体重选择控件——Hencoder「仿写酷界面」活动。

    6. BottomBar

      A custom view component that mimics the new Material Design Bottom Navigation pattern.

    7. Android-SpinKit

      Android loading animations.

    8. DanmakuFlameMaster

      android上开源弹幕解析绘制引擎项目。

    9. SmartRefreshLayout

      下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。

    10. WaveLoadingView

    An Android library providing to realize wave loading effect.

    1. UltraViewPager

      UltraViewPager是一个封装多种特性的ViewPager,主要是为多页面切换场景提供统一解决方案。

    2. material-dialogs

      A beautiful, fluid, and customizable dialogs API.

    3. MaterialRecents

      Lollipop's Recents container.

      类似系统切换应用的任务栈 UI。

  • 选择器

    1. AddressSelector

      一个轻量级的地址选择器。

    2. Android-PickerView

      时间选择器、省市区三级联动。

    3. PopsTabView

      PopsTabView是个filter容器,他可以快速,构建不同筛选样式,构建筛选结果,自由组合PopWindow成一组tab。

  • 6.0 权限

    1. PermissionsDispatcher

      Simple annotation-based API to handle runtime permissions.
      基于注解的权限申请库。

    2. easypermissions

      Simplify Android M system permissions。

  • Rx 系列

    1. RxBinding

      RxJava binding APIs for Android's UI widgets.

    2. RxCache

      Reactive caching library for Android and Java.

    3. RxPermissions

      Android runtime permissions powered by RxJava.

  • 框架

    1. MVPArms

      一个整合了大量主流开源项目高度可配置化的 Android MVP 快速集成框架。

    2. MVPArt

      此框架旨在解决传统 MVP 类和接口太多,并且 Presenter 和 View 通过接口通信过于繁琐,重用 Presenter 代价太大等问题。

    3. BaseRecyclerViewAdapterHelper

      BRVAH 是一个强大的RecyclerAdapter框架。

    4. MVVMHabit

      基于DataBinding框架,MVVM设计模式的一套快速开发库,整合Okhttp+RxJava+Retrofit+Glide等主流库,满足日常开发需求。

  • 其他

    1. jna

      Java Native Access.
      一个更方便的 java 与 native 调用的库。

    2. dagger2

      A fast dependency injector for Android and Java.

    3. Android-Pay

      支持微信和支付宝两种主流支付的集成库, 两行代码实现微信支付, 三行代码实现支付宝支付。

    4. walle

      Android Signature V2 Scheme签名下的新一代渠道包打包神器。

    5. realm-java

      一个处理数据库的库

    6. AndroidEventBus

      这是一个Android平台的事件总线框架。

    7. ProgressManager

      一行代码即可监听 App 中所有网络链接的上传以及下载进度,包括 Glide 的图片加载进度。

完整项目

  1. BookReader

    "任阅" 网络小说阅读器。

  2. Bailan

    基于retorfit2,Rxjva2,Okhttp3,Glide,Dagger2,GreenDAO等框架采用MVP架构的仿应用商店App。

  3. AiYaGirl

    爱吖妹纸——Retrofit + RxJava + MVP 架构 APP 体验代码家的干货集中营。

  4. CloudReader

    云阅:一款基于网易云音乐UI,使用Gank.Io及豆瓣api开发的符合Google Material Design的Android客户端。项目采取的是MVVM-DataBinding架构开发,现主要包括:干货区、电影区和书籍区三个子模块。DIY网易云音乐原来是如此Cool~。

Kotlin

    1. Phoenix

      介绍:Android平台上拍照/录像,图片/视频选择,编辑和压缩的一站式解决方案。

    2. KAndroid

      Kotlin library for Android.
      一个 Kotlin 扩展库。

    3. RxKotlin

      RxJava bindings for Kotlin.

    4. anko

      Anko is a Kotlin library which makes Android application development faster and easier.
      一个强大的 Kotlin 扩展库。

    5. flexbox-layout

      Flexbox for Android.
      一种多类型布局的库。

  1. 完整项目

    1. KotlinMvp

      基于Kotlin+MVP+Retrofit+RxJava+Glide 等架构实现的短视频类的APP练手项目,仿“开眼Eyepetizer”。

    2. Ribble

      Simple Dribbble Client using Dribbble API, fully written in Kotlin.
      使用了多个热门开源库的一个项目。

  2. 其他

    1. kotlin-dsl

      Kotlin language support for Gradle build scripts.

    2. KotlinBlogTranslation

      Kotlin 官方博客翻译计划。

    3. kotlin-for-android-developers-zh

      Kotlin for android developers in chinese.

    4. kotlin-in-chinese

      kotlin 官方文档翻译。

插件

  1. SQLDelight

    Generates Java models from CREATE TABLE statements.

  2. Android-Resource-Usage-Count

    Android Resource Usage Count Plugin.

其他

  1. flutter

    Flutter makes it easy and fast to build beautiful mobile apps.
    一个类似于 RN,但是性能消耗更小的一个库。

  2. android-testing-guide

    Android Testing with examples.
    Android 测试相关文章。

  3. mockito

    Most popular Mocking framework for unit tests written in Java.
    关于单元测试的一个库。

  4. awesome-java-leetcode

    数据结构与算法 demo,used in Java.

  5. lottie-android

    Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with Bodymovin and renders them natively on mobile!

  6. AndroidNote

    安卓学习笔记。

  7. AndroidUtilCode

    是一个强大易用的安卓工具类库。

  8. awesome-android-ui

    A curated list of awesome Android UI/UX libraries.
    包含众多开源 UI 控件。

  9. android-open-project

    Android 开源项目分类汇总

  10. android-architecture

google 提供的 android 架构蓝图,内部包含多个示例。

  1. AndroidLibs

    收集Android开发中优秀的开源组件库。

  2. FitScreen

    Android 屏幕适配的一种方案,包含自动生成xml文件jar包,自动替换dp、sp的jar包。