GitHub Android Libraries Top 100

本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果, 然后过滤了跟 Android 不相关的项目, 所以排名并不具备任何官方效力, 仅供参考学习, 方便初学者快速了解当前一些流行的 Android 开源库.

GitHub Android Libraries Top 100 简介[1]

iOS 版本的在此: https://github.com/Aufree/trip-to-iOS/blob/master/Top-100.md

项目名称 项目简介
1. react-native 这个是 Facebook 在 React.js Conf 2015 大会上推出的基于 JavaScript 的开源框架 React Native, 该框架结合了 Web 应用和 Native 应用的优势, 可以使用 JavaScript 来开发 iOS 和 Android 原生应用
2.Android-Universal-Image-Loader ImageLoader 是最早开源的 Android 图片缓存库, 强大的缓存机制, 早期被广泛 Android 应用使用, 至今仍然有很多 Android 开发者在使用
3. RxJava RxJava 是一个在 Java VM 上使用可观测的序列来组成异步的, 基于事件的程序的库, 简单来说它就是一个实现异步操作的库, RxJava 的优点在于一个词 “简洁”, 使用它就算你程序逻辑有多么复杂, 它依然能够保持简洁易懂
4. retrofit Retrofit 是 Square 公司出品的 HTTP 请求库, 同时是 Square 是最早开源项目之一, Retrofit 是目前 Android 最流行的 Http Client 库之一, 目前版本是 Retrofit2.0 Beta4, 越来越多 Android 开发者开始使用这个请求库了
5. okhttp OkHttp 是 Square 公司出品的 HTTP 另一个请求库, Google 不推荐人们使用 HttpClient, 可是 HttpURLConnection 实在是太难用了, 因此很多人使用了 OkHttp 来解决这问题, 据说 Android4.4 的源码中可以看到 HttpURLConnection 已经替换成 OkHttp 实现呢
6. SlidingMenu(不建议使用) 一个侧滑菜单开源库, 在 Google 自己原生态的侧滑菜单 NavigationDrawer 没有出现之前, 这个库就已经被广泛使用, 可是到现在这个库已经被放弃了
7. picasso Picasso 是 Square 公司出品的一款图片缓存库, 主导者是 JakeWharton 大神
8. android-best-practices Android 开发最佳实践, 里面所介绍的经验都是来自于 Futurice 公司 Android 开发者, 介绍内容有 Android 开发规范, 架构, 布局技巧, 以及使用一些有助于快速开发相关工具等等, 非常适合新手去学习
9. EventBus EventBus 是 Android 事件管理总线, 使用它可以替带 Android BroadCast, BroadCastReceiver, Handler 在 Activity, Fragment, Service, 线程之间传递消息, 大大简化了事件传递逻辑
10. android-async-http Android-Async-Http 是 Android 一款老牌异步请求库, 专门对 Android 在 Apache 的 HttpClient 基础上构建的异步 http 连接, 该库有很多特征, 例如: 库的 size 小, 支持文件上传不需使用第三方库支持, 内部使用线程池来处理并发, 等等
11. fresco Fresco 是 FaceBook 公司出品的一款图片缓存库, Fresco 是一个强大的图片加载组件, 支持加载 Gif 图和 WebP 格式, 支持 Android2.3(API level 9) 及其以上系统, Fresco 中设计了 Image pipeline 和 Drawees 两个模块各施其职, 使得图片完美加载出来, 想知道更多 image pipeline 和 Drawees 有关于它的特性, 可以到它官方平台看介绍
12. zxing ZXing 是二维码领域中名气最大的开源项目, 它提供了多个平台的二维码/条形码扫描解决方案, 拥有扫描快, 识别率高, 使用简单等特点
13. leakcanary LeakCanary 是 Square 公司出的一款检测内存泄露工具, 该工具能帮助你在开发阶段方便的检测出内存泄露的问题, 使用起来非常简单方便
14. butterknife 由 JakeWharton 大神开发出来的, ButterKnife 是 View 注入框架, 使用它为了简写很多 findViewById 代码, 同时还支持 View 的一些事件处理函数
15. MPAndroidChart MPAndroidChart 是一款强大的 Android 图表库, 支持各种各样图表显示, 能想到的图表样式这里几乎都有, 图表还支持选择, 拖放和缩放动画效果
16. ActionBarSherlock (不建议使用) ActionBarSherlock 这个库是 JakeWharton 大神开发出来支持 Android3.0 以下版本的, 后来慢慢的 Google 也提供了 AppCompat 库来支持 Android3.0 以下版本使用 ActionBar, 因此作者不建议我们再使用这个库了
17. androidannotations AndroidAnnotations 是一个能够让你快速进行 Android 开发的开源框架, 它能让你专注于真正重要的地方, 使代码更加精简, 使项目更加容易维护, 它的目标就是 “Fast Android Development.Easy maintainance”
18. ViewPagerIndicator 由 JakeWharton 大神开发出来的一个 ViewPager 指示器, 使用起来简单方便, 可高度定制, 开发出各种各样动画效果
19. glide Glide 是 Google 员工的开源项目, 广泛应用于 Google 一些 App 上, 在2014年 Google I/O 大会上被推荐使用, Glide 和 Picasso 被人拿来比较研究过, Glide 与 Picasso 有 90% 的相似度, 但在一些细节上还是有点区别的, 各有各优缺点看君选择
20. HomeMirror 开发者是由一名程序媛 Hannah Mittelstaedt , HomeMirror 是一款 Android 镜子应用, 目前它能实现日期, 时间, 天气, 生日信息, 事件提醒器, 骑车天气的推荐, 股票信息, XKCD 漫画网站的新帖等等
21. Android-PullToRefresh(不建议使用) 一个强大的拉动刷新开源项目, 支持各种控件下拉刷新, ListView, ViewPager, WebView, ExpandableListView, GridView, ScrollView, Horizontal ScrollView, Fragment 上下左右拉动刷新, 不过现在这个项目已经停止维护更新了, 推荐使用 Android-Ultra-Pull-To-Refresh
22. MaterialDesignLibrary 这个库控件都是遵循了 Google Material Design 设计规范开发出来, 例如有: Flat Button, Rectangle Button, CheckBox, Switch, Progress bar circular indeterminate 等等
23. PhotoView PhotoView 是 ImageView 的子类, 支持所有 ImageView 的源生行为, 例如: 支持 Pinch 手势自由缩放, 支持双击放大/还原, 支持平滑滚动等等, 并且非常方便的与 ImageLoader/Picasso 之类的网络图片读取库集成使用, 还方便的与 ViewPager 等同样支持滑动手势的控件集成
24. RxAndroid 由 JakeWharton 大神主导开发的项目, RxAndroid 是 RxJava 的一个针对 Android 平台的扩展, 主要用于 Android 开发
25. material-dialogs Material Dialogs 是一个可高度定制易用, 符合 Material Design 风格的 Dialogs, 兼容 Android API8 以上版本, 个人使用感觉它完全可替代 Android 原生那个, 比原生那个更加简单易用
26.Android-ObservableScrollView ObservableScrollView 是一款用于在滚动视图中观测滚动事件的 Android 库, 它能够轻而易举地与 Android 5.0 Lollipop 引进的工具栏 (Toolbar) 进行交互, 还可以帮助开发者实现拥有 Material Design 应用视觉体验的界面外观, 支持ListView, ScrollView, WebView, RecyclerView, GridView组件
27. Android-Bootstrap Android 版的 Bootstrap, 利用这个库能够实现很多 Bootstrap 样式风格, 之前有学过 Html 的人就知道 Bootstrap 是什么玩意啦
28. AndroidSwipeLayout 开发者是代码家, AndroidSwipeLayout 是一个支持ListView, GridView, ViewGroup等等左右上下滑动出操作菜单, 类似 qq 消息列表向左滑动显示出多某条信息的操作菜单
29. dagger Dagger 是 Square 公司出品的一个针对 Android 和 Java 的快速依赖注入器, 能够有效减少你敲代码量
30. ListViewAnimations 一个轻轻松松给 Android ListView 添加动画效果的库, 支持的动画有: Alpha, SwingRightIn, SwingLeftIn, SwingBottomIn, SwingRightIn and ScaleIn等等, 使用它能很容易就实现帅爆的效果
31. PagerSlidingTabStrip(不建议使用) PagerSlidingTabStrip 是一个给 Android ViewPager添加上 ViewPager 滑动指示器, 从 GitHub 上面看, 这个库似乎没有人在维护了, 因此不建议使用, 可使用 SmartTabLayout 来代替
32. AndroidViewAnimations 开发者是代码家, 这个库实现很多很酷炫的 Android 动画, 动画效果是借鉴 Animate.css 来实现的, 非常酷, 而且这个使用起来也是非常简单
33. AndroidSlidingUpPanel AndroidSlidingUpPanel 是一个上拉面板, 就是向上滑动的时候往上飞出一个显示面板控件, 该库效果在 Google Music, Google Maps and Rdio等 App 应用到
34. MaterialDrawer MaterialDrawer 是一个类似 Google 官方 NavigationView 侧滑显示控件, 个人认为 NavigationView 并没有 MaterialDrawer 实用, 因为 NavigationView 自由度不是很好, 很多都写死了不可以自由定义布局, 而 MaterialDrawer 能够实现跟 NavigationView 一样的效果, 同时还支持自定义效果, 自由度非常高
35. Material-Animations Material-Animations 是一个很好过渡动画库, 可以应用于 Activity 与 Activity 之间的跳转, Fragment 与 Fragment 之间的跳转, 以及各个 View 变化前后的过渡动画
36. MaterialViewPager 一个简单易用 Material Design 风格的 ViewPager 库
37. ion ion 是一个让 Android 的网络操作变得极其简单, 支持异步获取和处理JSON, 支持 Android 文件下载 (同时支持下载进度条绑定), 支持安全链接和代理
38. stetho Stetho是 Facebook 出品的一个强大的 Android 调试工具,使用该工具你可以在 Chrome Developer Tools查看App的布局, 网络请求(仅限使用Volley, okhttp的网络请求库), sqlite, preference, 一切都是可视化的操作,无须自己在去使用adb, 也不需要root你的设备
39. fastjson Fastjson 是一个 Java 语言编写的高性能功能完善的 JSON 库. 它采用一种“假定有序快速匹配”的算法, 把 JSON Parse的性能提升到极致, 是目前Java语言中最快的JSON库. Fastjson接口简单易用, 已经被广泛使用在缓存序列化, 协议交互, Web输出, Android客户端等多种应用场景
40. cardslib (不建议使用) Cardslib 是早期由 Gabriele Mariotti 开发的一个为开发者方便实现各种 Card UI 的 Android 开源代码库, 后来 Google 官方提供自己封装了 CardView 在 v7 包下, 使用 Google 官方的可以完全替代了这个库, 因此这个也被弃用了
41. Android-Ultra-Pull-To-Refresh 开发者是廖祜秋, 这个是一个非常强大的下拉刷新库, 继承 ViewGroup 可以包含任何 View, 功能甚至比 SwipeRefreshLayout 强大, 使用起来也非常容易, 还可以自由定制自己的 UI 样式
42. greenDAO greenDAO 是一个可以帮助 Android 开发者快速将 Java 对象映射到 SQLite 数据库的表单中的 ORM解决方案, 通过使用一个简单的面向对象 API, 开发者可以对 Java 对象进行存储, 更新, 删除和查询, greenDAO 相对 OrmLite, AndrORM 这两个 ORM 开源库, 性能是最高的
43. AndroidStaggeredGrid AndroidStaggeredGrid 是一个支持多列并且每一行的 item 大小不一, 交错排列的 GridView, 就是实现瀑布流样式效果, 目前该库已经被弃用了, 开发者建议我们使用 Google 官方控件 RecyleView 中的 StaggeredGridLayoutManager 布局来实现瀑布流效果
44. otto Otto 是 Square 公司出的一个事件库 (pub/sub 模式), 用来简化应用程序组件之间的通讯, otto 修改自 Google 的 Guava 库, 专门为 Android 平台进行了优化, 与上面介绍的 EventBus 相比, 两个库各有各的优点, 完全取决于我们自己项目的需求来选择它们哪一个
45. xUtils xUtils 是一个快速开发框架, 里面包含 DbUtils, ViewUtils, HttpUtils, BitmapUtils 四大模块, 可用于快速开发, 支持大文件上传, 拥有更加灵活的 ORM, 最低兼容 Android 2.2
46. realm-java Realm 一个轻量的 Android 版本的数据存储库, 比 Android 原生系统的 SQLite 更加简洁快速对数据进行操作
47.Android-CleanArchitecture CleanArchitecture 是一个非常典型使用 MVP 架构的项目, 大家如果还没有理解 MVP 架构的可以看看这个项目
48. StickyListHeaders StickyListHeaders 是一个实现能够固定在屏幕顶部的ListView Section Header库, 就是当前 section 的 header 固定在屏幕顶部, 当滑动到其他 section 时, 其他 section 的 header 会代替之前的 section 的 header, 固定到屏幕顶部, 类似于 Android4.0 的手机通讯录的效果
49. AppIntro AppIntro 是一个让人轻松快速搭建漂亮酷炫的引导页库
50. ActiveAndroid ActiveAndroid 是采用Rails中的 Active Record架构模式设计的适用于 Android 平台的轻量级 ORM 架构, 几乎可以不用写任何 SQL 代码实现快速开发
51. android-volley Volley 是谷歌官方开发团队在 2013 年 Google I/O 大会推出的一个新的网络通信框架, 这个框架把 AsyncHttpClient 和 Universal-Image-Loader 的优点集于了一身,既可以像AsyncHttpClient 一样非常简单地进行 HTTP 通信,也可以像 Universal-Image-Loader 一样轻松加载网络上的图片, 这个库并不是官方的, 只是托管同步在 Maven, 官方只提供的 Jar 包
52. twoway-view TwoWayView 是简化 RecyclerView 开发的一个库, 可以在其 Base LayoutManager 基础上构建各种各样的布局, 该库内置了几个常用布局 List, Grid, Staggered Grid,Spannable Grid
53. ShowcaseView ShowcaseView 是一个非常适合用于对用户进行第一次使用进行指导的库,使用起来非常简单还可以自定义样式
54. Calligraphy Calligraphy 是一个用来简化 Android 应用使用自定义字体的类库, 该类库会自动查找应用中的 TextView 并设置其使用的字体
55. NineOldAndroids NineOldAndroids 由 JakeWharton 大神开发的一个向下兼容的动画库, 主要是使低于API 11的系统也能够使用 View 的属性动画, 不过现在 JakeWharton 大神已经不推荐使用该库, 而是推荐我们使用官方封装在 Support 库里面的动画
56. android-floating-action-button FloatingActionButton 是一个悬浮操作按钮, 官方在 Support Design 包下也有封装一个类似这个库效果的 FloatingActionButton, 值得说明的是这个库是早在官方封装之前就存在的, 个人感觉这个库比官方那个更加好用
57. CircleImageView CircleImageView 是一个轻松帮你实现圆形效果 ImageView 图片库, CircleImageView 是基于 ImageView 扩展出来, 因此它拥有 ImageView 控件所有属性, 简单易用值得你使用的库
58. material Material 是将 Material Design 风格控件封装在该库当中, 目前封装有Progress, Button, Switch, Slider, Spinner, Text Field, TabPageIndicator, SnackBar, Dialog, BottomSheetDialog, Dynamic theme
59. ActionBar-PullToRefresh ActionBar-PullToRefresh 是一个下拉刷新, 下拉刷新时在 ActionBar 出现加载中提示的库
60. FloatingActionButton 又一个悬浮操作按钮库, 该库添加支持监听滑滚动事件, 当向下滑时按钮隐藏, 向上滑时按钮显示, 还有动画效果, 支持监听 ListView, ScrollView, RecylerView
61. AndroidAsync AndroidAsync 是一款基于 NIO 的低端 Android 异步 socket, http (client+server), websocket 和 socket.io 网络通信协议类库
62. rebound Rebound 是 Facebook 推出的一个弹性动画库, 可以让动画看起来真实自然, 像真实世界的物理运动, 带有力的效果, 使用的参数则是 Facebook 的 origami 中使用的
63. android-common android-common-lib 是 Trinea 大神收集的一些开发通用的缓存, 公共 View 以及一些常用工具类
64. RippleEffect RippleEffect 是一个实现在 Android 任何组件点击出现 Material Design 的波纹效果, 向下兼容到 Android API9
65. SmoothProgressBar SmoothProgressBar 是一个帮你的 App 方便实现可定制, 平滑动画的水平滚动进度条库
66. recyclerview-animators RecyclerView Animators 是一个对 Recycler 控件的 Item 添加以及删除增加动画效果, 动画效果有Scale, Fade, Flip, Slide 里面各种各样效果
67. circular-progress-button 一个带进度显示的 Button, 效果和动画做的都非常赞
68. DroidPlugin DroidPlugin 是 360 手机助手在 Android 系统上实现了一种新的插件机制: 它可以在无需安装, 修改的情况下运行APK文件, 此机制对改进大型APP的架构, 实现多团队协作开发具有一定的好处
69. dynamic-load-apk 开发者是 singwhatiwanna(任玉刚), 是《Android 开发艺术探索》书籍的作者, 这个是作者联合另两位开发者啸(时之沙)和宋思宇花了几个月时间研究出来的 Apk 动态加载框架, 想了解更多关于这框架可到作者博客看 这篇文章 有详细介绍
70. ExoPlayer ExoPlayer 是Google 开发团队开源出来的一个媒体播放库, 比 Android 框架原生的 MediaPlayer 拥有更多优点支持动态的自适应流 HTTP(DASH) 和 平滑流, 支持高级的HLS特性, 支持自定义和扩治你的使用场景等等
71. Crouton (不建议使用) Crouton 是一个显示提示信息的显示工具类, 可以用来代替 Toast, 默认显示在窗口的顶部, 可以按队列一个接着一个显示, 不过该库已经被弃用, 不推荐使用
72. robospice RoboSpice 是一个使你建立异步的长时间的运行任务异常轻松的一个网络库,在网络请求,缓存支持,和提供开箱即用的 rest 请求方面尤为强大
73. hugo Hugo 是 JakeWharton 大神推出的一个用于打印 Log, hugo 是基于注解被调用的, 引入相关依赖后, 在方法上加上 @DebugLog 即可输出 Log, 使用非常简单
74. async-http-client AsyncHttpClient 是又一款 Android 异步请求库, 该库支持 WebSocket 协议, 使用起来也比较简单易用
75. UltimateRecyclerView UltimateRecyclerView 是一个功能强大的 RecyclerView(advanced and flexible version of ListView), 包括了下拉刷新, 加载更多, 多种动画, 空数据提示, 拖动排序, 视差处理, 工具栏渐变, 滑动删除, 自定义floating button, 多种刷新效果, scrollbar, sticky header, 多 layout 支持等等元素, 而且使用起来跟 RecyclerView 一样的方便
76. MaterialEditText MaterialEditText 是就职于 Flipboard 的员工 扔物线 开发的, 在 AppCompat v21 中也提供了 Material Design 的控件 EditText, 可是由于比较难用, 没有提供设置颜色的 Api, 于是就产生这个第三方库
77. Side-Menu.Android Side Menu 是 Yalantis 组织开源出来, 该组织因开源出一些动画很棒的开源库为大家所熟知该库是其中一个, 该库是提供翻页动画效果的侧边菜单, 动画体验超赞的
78. drag-sort-listview DragSortListView 是一个可以实现拖动排序, 滑动删除的 listview 控件, 注意的是作者对该库已经放弃维护更新了, 不过感兴趣的人可以去研究一下
79. android-times-square TimesSquare 是 Square 公司出品的一款显示日历选择日期的控件, 可以让用户选择多个日期
80. GreenDroid(不建议使用) GreenDroid 是一个封装好的 Android UI 界面库, 不过该库已经被弃用了, 不建议使用
81. logger Logger 是一个简单, 漂亮, 强大 Android 打印日志库
82. acra Acra 是一个能够让 Android 应用自动将崩溃报告以谷歌文档电子表的形式进行发送的库, 旨在当应用发生崩溃或出现错误行为时, 开发者可以获取到相关数据
83. FadingActionBar FadingActionBar 是一个支持 ListView, ScrollView, WebView 向下滚动时逐渐显示 ActionBar 库
84. AndroidImageSlider AndroidImageSlider 库开发者是代码家, 该库是为 Banner 图片滑动提供多种动画效果, 还可以轻易为 Banner 加载网络图片
85. SystemBarTint SystemBarTint 是一个实现沉浸式状态栏库, 适用于 Android 系统 4.4 其以上的版本
86. android-menudrawer MenuDrawer 是一款滑出式菜单库, 通过拖动屏幕边缘滑出菜单, 支持屏幕上下左右划出, 支持当前 View 处于上下层, 支持 Windows 边缘, ListView 边缘, ViewPager 变化划出菜单等
87. RoundedImageView RoundedImageView 一个快速支持图片圆角显示效果的库, 该库特点是能快速加载, 为了提高加载速度, 该库不用创建原始位图的副本, 不使用 clipPath, 不使用 setXfermode 裁剪的位图等方式来实现 ImageView 圆角, 使用也非常简单
88. afinal Afinal 是一个 android 的 sqlite orm 和 ioc 框架, 同时封装了 android 中的 http 框架, 使其更加简单易用, 使用 finalBitmap, 无需考虑 bitmap 在 android 中加载的时候 oom 的问题和快速滑动的时候图片加载位置错位等问题, Afinal 的宗旨是简洁, 快速, 约定大于配置的方式, 尽量一行代码完成所有事情
89. android-pulltorefresh(不建议使用) 另一个下拉刷新库, 但是该库已经停止维护, 因此不建议使用, 推荐使用 Android-Ultra-Pull-To-Refresh
90. Bolts-Android Bolts 是一款底层类库集合, 在后台实现异步操作, 并提供接口反馈当前异步执行的程度 (可以通过接口实现UI进度更新), 最后反馈执行的结果给UI主线程, 与AsyncTask比较: (1)使用的是无大小限制的线程池; (2)任务可组合可级联,防止了代码耦合
91. NumberProgressBar NumberProgressBar 开发者是代码家, 这是一个带简约性感数字显示的进度条库, 使用非常简单方便
92. SwipeBackLayout SwipeBackLayout 是一个支持屏幕上下左右滑动返回上层 Activity, 关闭当前 Activity, 类似简书 App
93. android-gif-drawable 一个支持 gif 显示的 view, 用 jni 实现的, 编译生成 so 库后直接 xml 定义 view 即可, 简单易用
94. VitamioBundle Vitamio 是一款 Android 与 iOS 平台上的全能多媒体开发框架, 特点:(1) 全面支持硬件解码与 GPU 渲染, (2) 能够流畅播放 720P 甚至 1080P 高清 MKV, FLV, MP4, MOV, TS, RMVB 等常见格式的视频, (3) 在 Android 与 iOS 上跨平台支持 MMS, RTSP, RTMP, HLS(m3u8)等常见的多种视频流媒体协议, 包括点播与直播
95. SmartTabLayout SmartTabLayout 是一个自定义的 Tab title strip, 基于 Google Samples 中的 android-SlidingTabBasic 项目, 滑动时 Indicator 可平滑过渡
96. uCrop uCrop 是Yalantis 组织开源的图片裁剪库, 支持缩放, 旋转图片, 支持各种比例的裁剪框, 非常强大的一个图片裁剪库
97. android-crop 又一个图片裁剪库, 向下兼容到 Api 10, 个人感觉这个库并没有比上面介绍的 uCrop 强大
98. HoloEveryWhere HoloEveryWhere 是一套 Android 开发库, 提供了全套 Holo Style 控件, 它的外观与功能和标准 Holo Style 控件基本相同, 唯一不同的是它可以运行在低于 4.0 版本的 Android 系统上
99. AVLoadingIndicatorView AVLoadingIndicatorView 库含有各种各样漂亮的加载动画效果, 使用起来也非常简单, 和平时使用 ProgressBar 一样
00. sweet-alert-dialog Android 版的 SweetAlert, 清新文艺, 快意灵动的甜心弹框, 灵感来源于 JS 版 SweetAlert

粗计

Square 公司占有 7 席

项目名称 排名
Retrofit 4
OkHttp 5
Picasso 7
LeakCanary 13
Dagger 29
Otto 44
TimesSquare 79

FaceBook 公司占有 4 席

项目名称 排名
React Native 1
Fresco 11
Stetho 38
Rebound 62

JakeWharton 大神占有 5 席

项目名称 排名
Butter Knife 14
ActionBarSherlock 16
ViewPagerIndicator 18
NineOldAndroids 55
Hugo 73

代码家大神占有 4 席

项目名称 排名
AndroidSwipeLayout 28
AndroidViewAnimations 32
AndroidImageSlide 84
NumberProgressBar 91

Android 学习资料收集[2]

书籍

书籍名称 推荐理由
Thinking In Java 中文版 学习 Android 开发, 首先需要 Java 基础, 这里推荐 Thinking In Java, Thinking In Java 是 Java 的经典书籍, 是学习 Java 语言必备书籍
第一行代码 郭霖大神的杰作, 郭神在CSDN中的博客文章非常不错, 书我看了, 非常适合新手, 里面的内容非常棒, 建议结合郭神博客文章一起来学习
疯狂Android讲义第三版 作者是李刚, 这本书是基于 Android 5.0 来讲的, 我看过第二版, 这本书给我第一感觉就是很厚, 但里面内容写的还是很详细的, 代码很多, 可以跟着代码一步步敲
Android群英传 本书作者 @Tomcat 的猫, 曾就职于上海 TCL 通讯, 从事 Alcatel(阿尔卡特) Android 手机系统的定制工作, 活跃于 CSDN, 目前就职于上海沪江网 Android 开发部RD项目组, 负责沪江 App 的功能预研
Android开发艺术探索 由@任玉刚Coder所著, 是一本 Android 进阶类书籍, 采用理论, 源码和实践相结合的方式来阐述高水准的 Android 应用开发要点. 本书从三个方面来组织内容: 第一, 介绍 Android 开发者不容易掌握的一些知识点: 第二,结合Android源代码和应用层开发过程, 融会贯通, 介绍一些比较深入的知识点: 第三, 介绍一些核心技术和Android的性能优化思想.
App 研发录 本书作者是包建强, 本书是作者多年 App 开发的经验总结, 从 App 架构的角度, 重点总结了 Android 应用开发中常见的实用技巧和疑难问题解决方法, 为打造高质量 App 提供有价值的实践指导, 迅速提升应用开发能力和解决疑难问题的能力. 这本书非常有利于 Android 开发者进阶.
Android 设计模式源码分析 本书作者是开发技术前线创立者之一 Mr.Simple, 该书从 Android 源码的角度由浅入深地剖析设计模式的运用, 让工程师们把设计与模式重视起来, 提升自己的设计能力与代码质量

开发环境/工具

(附上: 由 @脉脉不得语 收集维护超多开发工具下载地址 AndroidDevTools, 后五个工具资料在 stormzhang 博客中找到的,地址)

环境/工具 简述
Android Studio 这个开发工具上手需要一定的时间, 自从 Google 推出1.0正式版, 这个工具一直火爆, 谷歌也不停更新维护, 性能逐渐稳定提高, 目前 github 上面的绝大多数开源项目都是使用 Android Studio 工具, 这就是开发 Android 必须掌握使用的工具, 如果还在使用 Eclipse 开发 Android 的童鞋们, 赶紧换成 AS 开发吧
Genymotion 强大好用高性能的 Android 模拟器, 自带的那个模拟器简直不忍直视, 启动超慢的, 跟这个没法比, 无论你是用 Eclipse 还是 Android Studio 里面都有 Genymotion 插件
jadx 一个 Android 反编译神器, 不同于常见的 dex2jar, 这个反编译器生成代码的 try/catch 次数更少, View也不再是数字 id 了, 可读性更高
android-selector 可以根据指定颜色生成 Selector Drawable 的插件
GradleDependenciesHelperPlugin Gradle 依赖自动补全插件
Smali Viewer sv 是一款免费 APK 分析软件, 对你感兴趣的 APP 分析看看它们都用了些什么, 对你学习借鉴有一定帮助
folding-plugin layout 文件夹里的布局文件一般很长很长没有目录, 这个插件就可以把 layout 分好层级结构, 类似 src 下目录结构
CodeGlance 在编辑代码最右侧, 显示一块代码小地图
Statistic 统计整个项目行数的插件, 这可表示我们日日夜夜辛辛苦苦必备插件
idea-markdown 在 AS 中编写 Markdown 文件, 可以直接预览网页显示效果, 对于你经常编写 Markdown 文件的你值得拥有这个插件
Stetho Stetho 是 Facebook 出品的一个强大的 Android 调试工具,使用该工具你可以在 Chrome Developer Tools 查看 App 的布局, 网络请求(仅限使用 Volley, okhttp 的网络请求库), sqlite, preference, 一切都是可视化的操作,无须自己在去使用 adb, 也不需要 root 你的设备
ClassyShark ClassyShark 是 Google 发布的一款可以查看 Android 可执行文件的浏览工具, 支持.dex, .aar, .so, .apk, .jar, .class, .xml 等文件格式, 分析里面的内容包括 classes.dex 文件, 包方法数量, 类, 字符串, 使用的 NativeLibrary 等
AndroidWiFiADB 使用 WiFi 连接而不需要 USB 连接 Android 设备达到安装, 运行, 调试应用的目的
checkstyle-idea Checkstyle-idea 是一款检查自己写的代码是否符合规范的插件, 该插件是根据 checkstyle.xml 文件来检查的, checkstyle.xml 文件可以由自己自己定义, 也可以使用一些大公司定义的规范, 如果不懂得如何定义, 可以查看 官方文档, 该插件的详细介绍以及使用, 可以看一下咕咚大侠写的 文章
ECTranslation ECTranslation 是 Android Studio 开发工具的一个翻译插件, 可以将英文翻译为中文, 英语基础差的童鞋装上它就可以轻松阅读 Android 源码啦
Android Methods Count 统计 Android 依赖库中方法的总个数, 避免应用方法数超过 65K 问题
AndroidLocalizationer 可用于将项目中的 string 资源自动翻译为其他语言的插件, 其翻译支持使用 Microsoft Translator 或 Google Translation
ButterKnife Zelezny ButterKnife 生成器, 使用起来非常简单方便, 为你简写了很多 findViewId 代码, 如果你不了解 ButterKnife 的可以到这里看看
SelectorChapek 设计师给我们提供好了各种资源, 每个按钮都要写一个selector是不是很麻烦? 这么这个插件就为解决这个问题而生, 你只需要做的是告诉设计师们按照规范命名就好了, 其他一键搞定
GsonFormat 现在大多数服务端 api 都以 json 数据格式返回, 而客户端需要根据 api 接口生成相应的实体类, 这个插件把这个过程自动化了, 赶紧使用起来吧
ParcelableGenerator Android中的序列化有两种方式, 分别是实现 Serializable 接口和 Parcelable 接口, 但在 Android 中是推荐使用 Parcelable, 只不过我们这种方式要比Serializable方式要繁琐, 那么有了这个插件一切就ok了
LeakCanary 良心企业 Square 最近刚开源的一个非常有用的工具, 强烈推荐, 帮助你在开发阶段方便的检测出内存泄露的问题, 使用起来更简单方便, 而且我们团队第一时间使用帮助我们发现了不少问题, 英文不好的这里有雷锋同志翻译的中文版 LeakCanary 中文使用说明
更多 该作者收集整理了 40 个插件, 可以说是史上最全的了

博客

博客地址 博主信息
Android Developers Blog Android官网博客, 在上面可以关注 Android 最新的进展与最权威的博客(需翻墙)
stormzhang 博主是上海薄荷科技开发主管, 他的博客分享了他从编程白痴到自学 Android 一路走过的经验, 写了一篇 Android学习之路 帮助了无数人, 里面还有很多好的文章非常适合新手入门, 并且是微信公众号「AndroidDeveloper」的运营者, 可以算是 Android 界最有影响力的公众号之一了, 强烈推荐关注
胡凯 目前就职于腾讯上海从事 Android 开发的工作, 发起 Google Android 官方培训课程中文版翻译, 这课程是学习 Android 应用开发的绝佳资料
Trinea 目前在滴滴负责 Android 客户端技术, 他是开源库项目收集达人, 你想要的开源库上面都有, 并且发起 Android 开源项目源码解析, 在使用开源库的同时也可以知道其中原理, 大家可以去关注一下, 地址
郭霖 博主郭霖是大神, 人人都称”郭神”, 是第一行代码的作者, 博主在 CSDN 上所写的文章都非常值得学习
代码家 90后 Android 大神, 称作库达人, 博主收集了很多 Android 开源库, 博主自己也做了很多开源库, 非常值得学习
light_sky Android 开发工程师, 目前在北京工作. Google big fan, 热爱开源, 热爱分享, 活跃于 GitHub, G+, Twitter, 捕捉Android最新资讯和技术, ViewPagerIndicator 开源项目分析者
张鸿洋 张鴻洋是 CSDN 博客专家, 博主在 CSDN 所发布的每一篇文章都是干货, 都很值得大家去学习
张兴业 张兴业同样也是 CSDN 博客专家, 博主专注移动互联网开发, 关注移动支付业务
hi大头鬼hi hi大头鬼hi 是阿里巴巴集团的一名 Android 工程师, 擅长 Android, RxJava, RxAndroid, ReactNative, Node.js, 大前端, 可谓是全栈工程师, 如果你对 RxJava 技术感兴趣, 不妨到他的博客看看, 他写了一系列有关 RxJava 的介绍
更多 这里面收集了很多国内外开发者的信息, 大家可以去看看

社区

名称 简介
StackOverFlow IT 界的问答社区, 你开发当中所遇到的问题基本上都能在这里能寻找到你想要的答案
SegmentFault SegmentFault 是一个专注于解决编程问题, 提高开发技能的社区
CSDN CSDN 是全球最大中文IT技术社区
稀土掘金 高质量的技术分享社区
谷歌开发者社区(GDG) GDG 是 Google Developer Groups 的缩写, 中文名称是谷歌开发者社区

开源项目学习

项目名称 项目简介
Google I/O 2014 Google I/O Android App 使用了当时最新推出的 Material Design 设计
Google play music 一个跨多个平台音乐播放器
Google Santa Tracker for Android Google 开源的一个儿童教育和娱乐的 App
github客户端 开源者 github 团队, 支持项目的 lssues 和 Gists 并集成了新闻 feed 以便及时获取来自组织好友和资料库的更新信息, 还提供了一个用于快速访问你创建,监控以及发布 issue 面板, 可查看并将问题加到收藏夹
Talon-for-Twitter 一个完整版 Twitter 第三方客户端, 属于顶级水平, 而且在源代码 100% 开源, 学习资源让你取之不尽
Anime Taste 开发者是代码家为 AnimeTaste 全球动画精选开发的 Android 客户端, 国内很少见的精彩而且开源的 APP, 获得豌豆荚110期设计奖
EverMemo 开发者是代码家, EverMemo 是一款让你快速记录与分享灵感的随身便签, 极简的界面与卡片式布局, 让你记录与查找便签更有效率
9GAG 开发者是 stormzhang 博主,这个开源项目教你使用 Studio, Gradle 以及一些流行的开源库快速开发一个不错的 Android 客户端
MIUI 便签 MiCode 便签是小米便签的社区开源版, 由 MIUI 团队(ww.miui.com)发起并贡献第一批代码, 遵循 NOTICE 文件所描述的开源协议
贝壳单词 开发者是许晓峰(Drakeet), 获得豌豆荚设计奖, 这个是初期版本, 新版没有开源, 但是在博主的博客当中将一些新版的内容都剥离出来写成了文章,可以去学习一下
Muzei Live Wallpaper 开发者是 Ian Lake , 就职于 Google, 这款是定时更换桌面精美壁纸 App
四次元-新浪微博客户端 一个仿新浪微博客户端 App, 基本都含有新浪微博的功能, 开源团队写了一份 wiki 文档, 可以去学习一下该 App 是如何实现的
知乎专栏 开发者是白瓦力, 项目结构清晰, 代码分包合理, 很棒. 很适合新手去学习如何搭建一个 App 结构, 熟悉开发一个完整 App 的流程
eoe 客户端 eoe 社区Android客户端
oschina 开源中国社区 Android 客户端, 此开源的是 v1 版本, v2 版本将在 2015 年年中开源
v2ex 开发者是杨辉, 这个是 v2ex Android 第三方客户端
Tweet Lanes 功能比较完整的 Twitter 客户端
Financius 一款简单易用个人理财 Android 程序
Coding Coding 类似于 github 一个代码托管平台, 这个是 Coding 的 Android 版客户端
ZXing 二维码扫描工具,市场上许多应用的二维码扫描工具都是从这个修改得到的
photup 编辑机批量上传照片到 facebook 上,代码分包合理,很棒,不过这个项目依赖的开源项目比较多, 比较难编译
todo.txt-android todo.txt 官方 Android 应用, 一个极简的将待办事件记录在 .txt 文件中
扫扫图书 一个让你懂得如何去选择一本书的 APP, 具有扫描搜索查询图书的信息功能
ChaseWhisplyProject 开启摄像头在你所在位置寻找鬼魂, 进行打鬼游戏
AntennaPod AntennaPod 是一个自由, 开源的播客客户端, 支持 Atom 和 RSS Feed
干柴 开发者是冯建, 一个专注收集 android 相关干货(文摘,名博,github等等)资源 App
Hacker News 一个查看黑客新闻报道和评论的 App
proxydroid ProxyDroid 是一个帮助你在你的 Android 设备上设置代理 (HTTP / SOCKS4 / SOCKS5)
AliGesture Android平台手势识别应用, 简单的手势就可以进入预置的应用, 方便快捷
指读 指读顾名思义就是用手指去阅读浩瀚的书海
KJ 音乐 开发者是张涛, 快捷音乐使用到KJFrameForAndroid开发框架, 拥有界面绚丽, 操作简单, 播放手机本地音乐, 在线收听音乐等功能, 还支持: 新浪微博, 百度账号, QQ 账号的一键登录
哎嘛 OSCHINA 第三方客户端, 这个版本界面比官方版本界面好看多了, 使用的是 Material Design, 界面看上去非常清爽舒服
码厩 博客园第三方客户端, 使用到缓存技术, 当你打开一次之后的博客内容, 会自动保存到设备中, 下次打开阅读同一文章时不需要再利用网络加载, 大家如果想为自己 App 搞缓存的, 可以研究一下该 App 是如何实现的喔
cnBeta 第三方阅读器 该 App 是 cnBeta(中文业界资讯站) 第三方阅读客户端, 界面也是使用 Material Design, 还加上一些动画效果, 让人阅读文章起来不会感觉枯燥, 值得去研究学习一下
BlackLight BlackLight是由纸飞机开发团队开发的一款Android上的新浪微博第三方轻量级客户端
Actor Actor(优聆) 是一款即时通讯 App, 解决网络通讯差的情况, 支持离线消息和文件存储, 自动与手机联系人建立联系等等
Plaid 一个遵循 Material Design 的一个设计新闻客户端,里面的一些完全MD的一些特效很棒,同时整个客户端的框架设计也很有参考意义
SimplifyReader 一款基于 Google Material Design 设计开发的 Android 客户端, 包括新闻简读, 图片浏览, 视频爽看, 音乐轻听以及二维码扫描五个子模块, 项目采取的是MVP架构开发
PHPHub-Android PHPHub Android 客户端, 项目架构使用 nucleus 简化 MVP 架构, API 请求返回数据使用 RxJava 进行处理, 客户端使用了独特的二维码扫码登录, 有兴趣的可以去研究一下
Leisure 闲暇(Leisure)是一款集”知乎日报”, “果壳科学人”, “新华网新闻”以及”豆瓣图书”于一体的阅读类 Android 应用, 项目里面有多语言切换、夜间模式以及无图模式, 如果你还不知道这些技术怎么实现, 不妨参考一下这个项目
Meizhi 开发者是许晓峰(Drakeet), 该 app 是数据来自代码家干货网站 gank.io, 有很多开发者都纷纷为这网站做客户端 app, 因为代码家大神开放该网站的 Api, 更重要的是该网站每天除了有干货还有漂亮妹子看呢, 该 App 使用到的技术有 RxJava + Retrofit, 代码结构非常清晰, 值得一看的开源 App.
Bingo 开发者是孙福生, Bingo 是一款 IT 阅读学习类的开源软件, 作者收集一些干货学习内容, 你也可以在 App 上分享你的认为干货文章, 该项目使用动态代理 AOP 编程框架, 使开发起来更简洁, 更高效. 里面有一个功能就是多种主题切换, 感兴趣的可以看看怎么实现

Android 开发者杂志周刊

( 前五个资料来自 Drakeet 收集整理的, 资料原链接 地址 )

周刊名 周刊简介
Android Weekly Android Weekly 是由Android 团队的成员和国外知名的 Android 开发者维护, 分享的内容不仅仅只有干货, 而且还有最新的技术分享, 也是Android 开发圈子最早, 最有名的周报
Android 开发技术周报 Android 开发技术周报是由@脉脉不嘚語 维护更新, 截止到现在, 已经发布了28 期, 分享的都是高质量的文章教程, 代码库, 工具, 新闻视频, 设计等
Android 科学院 @duguguiyu和豌豆荚一小撮工程师组成, 分享的都是最新的 Android 技术: 虽然更新频率不是很高, 但是质量确是很高的, 值得一看的
开发技术前线 开发技术前线是一个高质量技术文章的聚合网站, 主要分享 Android, iOS, 以及招聘等内容
App 开发日报 App 开发日报主要关注移动应用的开发, 它每天一刊, 分享的内容主要来自微博上知名的开发者推荐的内容, 因此质量基本上是有保证的
Android 开发周报 Android 开发周报是郭亮在连载更新在 Infoq 的周刊, 它不仅分享 Android 的相关新闻, 新工具, 而且还有更加深入的, 所以对于新生老人都很适合
干货集中营 代码家 维护更新, 周一到周五每天中午分享, 分享内容有漂亮妹子, Android 干货, iOS 干货, App, 技术以外推荐, 还有休息视频
Android Blog 周刊 AndroidBlog 是由 Jomeslu 收录的, 目前就职于搜狐, 该周刊分享内容主要有一周国内外热门技术博客, 优秀的类库, 以及一些有趣的新闻, 看了前几期分享的内容质量都是很高的, 因此值得推荐给大家

Awesome 系列

动画系列

Material Design 设计

素材

开源库收集

设计模式

实践篇

面试

Git 教程

新手看完这几份教程基本上知道怎么使用 Git 了

文档

其它资料收集

知乎上的讨论

List of Android Libraries[3]

This is an alphabetical list of libraries for Android development, the majority being actively maintained.

UI/UX Library is here.

Index

Networking

Name Repository License
Android Asynchronous Http Client https://github.com/loopj/android-async-http Apache License V2
Async Http Client https://github.com/AsyncHttpClient/async-http-client Apache License V2
ion https://github.com/koush/ion Apache License V2
OkHttp https://github.com/square/okhttp Apache License V2
Retrofit https://github.com/square/retrofit Apache License V2
RxNetty https://github.com/ReactiveX/RxNetty Apache License V2
Basic HTTP Client for Java https://code.google.com/p/basic-http-client/ Apache License V2

Image Loader

Name Repository License
Glide https://github.com/bumptech/glide License
ion https://github.com/koush/ion Apache License V2
Picasso https://github.com/square/picasso Apache License V2
Universal Image Loader https://github.com/nostra13/Android-Universal-Image-Loader Apache License V2
Fresco https://github.com/facebook/fresco BSD License

Drawable

Name Repository License
MrVector https://github.com/telly/MrVector License

Dependency Injections

Name Repository License
AndroidAnnotations https://github.com/excilys/androidannotations Apache License V2
Butter Knife https://github.com/JakeWharton/butterknife Apache License V2
Dagger(Square) https://github.com/square/dagger Apache License V2
Dagger(Google) https://github.com/google/dagger Apache License V2
RoboGuice https://github.com/roboguice/roboguice Apache License V2
Scopes https://github.com/emmano/Scopes MIT

JSON

Name Repository License
Gson http://google-gson.googlecode.com/svn/trunk/ Apache License V2
ig-json-parser https://github.com/Instagram/ig-json-parser BSD
Jackson https://github.com/FasterXML/jackson Apache License V2

O/R Mapping

Name Repository License
ActiveAndroid https://github.com/pardom/ActiveAndroid Apache License V2
Cupboard for Android https://bitbucket.org/littlerobots/cupboard Apache License V2
DBFlow https://github.com/Raizlabs/DBFlow MIT
greenDAO https://github.com/greenrobot/greenDAO Apache License V2
RushOrm https://github.com/Stuart-campbell/RushOrm Apache License V2
Sugar ORM https://github.com/satyan/sugar Satya Narayan
Shillelagh https://github.com/pieces029/shillelagh Apache License V2
SQLBrite https://github.com/square/sqlbrite Apache License V2
Ollie https://github.com/pardom/Ollie Apache License V2
TriOrm https://github.com/HendrixString/Android-TriOrm Apache License V2

NoSQL

Name Repository License
Couchbase-Lite-Android https://github.com/couchbase/couchbase-lite-android Apache License V2
Realm https://github.com/realm/realm-java Apache License V2
SimpleNoSQL https://github.com/Jearil/SimpleNoSQL Apache License V2
RxSimpleNoSQL https://github.com/xmartlabs/RxSimpleNoSQL Apache License V2
SnappyDB https://github.com/nhachicha/SnappyDB Apache License V2

Pub/Sub

Name Repository License
EventBus https://github.com/greenrobot/EventBus Apache License V2
Otto https://github.com/square/otto Apache License V2
MBassador https://github.com/bennidi/mbassador MIT

Logger

Name Repository License
Hugo https://github.com/JakeWharton/hugo Apache License V2
Timber https://github.com/JakeWharton/timber Apache License V2
LoggingInterceptor https://github.com/ihsanbal/LoggingInterceptor MIT

Background Processing

Name Repository License
Android Priority Job Queue https://github.com/path/android-priority-jobqueue MIT
Tape https://github.com/square/tape Apache License V2
Zorn https://github.com/HendrixString/Android-Zorn Apache License V2

Fonts

Name Repository License
Calligraphy https://github.com/chrisjenx/Calligraphy Apache License V2

Video

Name Repository License
ExoPlayer https://github.com/google/ExoPlayer Apache License V2
ijkplayer https://github.com/bbcallen/ijkplayer Apache License V2
mp4parser https://github.com/sannies/mp4parser Apache License V2

Parcelables

Name Repository License
AutoParcel https://github.com/frankiesardo/auto-parcel Apache License V2
Akatsuki https://github.com/tom91136/Akatsuki Apache License V2
Icepick https://github.com/frankiesardo/icepick Apache License V2
Parceler https://github.com/johncarl81/parceler Apache License V2

Functional Programming

Adding Java-8 Functional Programming Features

Name Repository License
Retrolambda https://github.com/orfjackal/retrolambda Apache License V2

Functional Reactive Programming

Name Repository License
RxAndroid https://github.com/ReactiveX/RxAndroid Apache License V2
RxJava https://github.com/ReactiveX/RxJava Apache License V2

Social Networks

Name Repository License
ASNE https://github.com/gorbin/ASNE MIT
Facebook SDK https://github.com/facebook/facebook-android-sdk Apache License V2
Twitter Fabric Unknown Unknown

WebRTC

Name Repository License
AndroidRTC https://github.com/pchab/AndroidRTC Apache License V2

Image Processing

Name Repository License
GPUImage for Android https://github.com/CyberAgent/android-gpuimage Apache License V2

Camera

Name Repository License
Landscape video camera https://github.com/jmolsmobile/LandscapeVideoCamera Apache License V2
EasyCamera https://github.com/Glamdring/EasyCamera Apache License V2

Build

Name Repository License
Buck https://github.com/facebook/buck Apache License V2

Security

Name Repository License
Grab’n Run https://github.com/lukeFalsina/Grab-n-Run Apache License V2

Media

Name Repository License
PdfMyXml https://github.com/HendrixString/Android-PdfMyXml Apache License V2

Showcases

Name Repository License
android-best-practices https://github.com/futurice/android-best-practices CC BY 4.0
BlurTestAndroid https://github.com/patrickfav/BlurTestAndroid Unknown
card.io-Android-source https://github.com/card-io/card.io-Android-source MIT
iosched https://github.com/google/iosched Apache License V2
JamsMusicPlayer https://github.com/psaravan/JamsMusicPlayer Apache License V2
Reflection No Reflection https://github.com/stephanenicolas/reflection-no-reflection Apache License V2
Mizuu https://github.com/MizzleDK/Mizuu Apache License V2
Mover https://github.com/Codetail/Mover Apache License V2
Talon-for-Twitter https://github.com/klinker24/Talon-for-Twitter Apache License V2
Telecine https://github.com/JakeWharton/Telecine Apache License V2
u2020 https://github.com/JakeWharton/u2020 Apache License V2

Maps

Name Repository License
GraphHopper https://github.com/graphhopper/graphhopper Apache License V2
Mapsforge https://github.com/mapsforge/mapsforge LGPL

Other

Name Repository License
Joda Time Android https://github.com/dlew/joda-time-android Apache License V2
Bolts https://github.com/BoltsFramework/Bolts-Android BSD
Secure Preference Manager http://prashantsolanki3.github.io/Secure-Pref-Manager/ Apache License V2

Reference

[1]GitHub Android Libraries Top 100 简介
[2]Android 学习资料收集
[3]List of Android Libraries