我想很多程序员应该记得 GitHub 上有一个 Awesome – XXX 系列的资源整理。awesome-android 是JStumpp 发起维护的 Android 资源列表,内容包括:图表工具、游戏开发、GUI、崩溃检测、调试工具、通知、图片加载、依赖注入等等。
普通的 Java 资源,请查看 https://github.com/jobbole/awesome-java-cn 。
Awesome 系列虽然挺全,但基本只对收录的资源做了极为简要的介绍,如果有更详细的中文介绍,对相应开发者的帮助会更大。这也是我们发起这个开源项目的初衷。
- 基于 awesome-android 列表,我们将对其中的各个资源项进行编译整理。此外还将从其他来源补充好资源。
- 整理后的内容,将收录在伯乐在线资源频道。可参考已整理的内容:
从下面的目录来看,本项目的工作量小不了,所以非常期待能有更多程序员一起来参与。
不过加入前,有几个小要求:
- 英文还不错,能读懂英文并用自己的话复述;
- 在做 Android 开发;
如有兴趣,请加 QQ:50872495。加 Q 时请注明「安卓大全」
欢迎大家为列表贡献高质量的新资源,提交PR时请参照以下要求:
- 请确保推荐的资源自己使用过
- 提交PR时请注明推荐理由
资源列表管理收到PR请求后,会定期(每周)在微博转发本周提交的PR列表,并在微博上面听取使用过这些资源的意见。确认通过后,会加入资源大全。
感谢您的贡献!
注:名单不分排名,不定期补充更新
虽然奖励可能并不是你加入的主要原因,但还是有必要提一下:
- 整理超过 20 个资源后,可在伯乐在线上开通打赏;
- 每整理 20 个资源,有机会获得技术书籍或各种有意思的创意、极客产品;
- 奖励详情
- 库
- 图表
- 依赖注入
- 游戏开发
- 图形界面
- ActionBar
- 导航栏
- 动画
- 图片
- 输入
- 图片加载
- JSON
- 崩溃检测
- 网络请求
- 通知
- 数据库
- ORM
- REST
- 测试
- 行为监测
- 集合框架
- 调试工具
- 无线
- 其它
- 资源
- 更多库的列表
- 非 Java 开发安卓应用的替代选择
- C#
- HTML, CSS 和 Javascript
- Lua
- Scala
- Groovy
- Kotlin
- 性能
- AChartEngine - 图表引擎。
- EazeGraph - 图表绘画库。
- WilliamChart - 优秀的运动能力效果的图表库。
- HelloCharts - 支持缩放、滚动和其它动画的图表库。
- MPAndroidChart - 支持缩放和拖拽手势的Android图表库。
- RoboGuice - Android依赖注入框架。
- Dagger - Java和Android的依赖注入框架。
- Butter Knife - Android视图注入框架。
- AndroidAnnotations - 编译时使用Java注解的依赖注入库。
- AndEngine - 免费、有趣、快速的Android 2D OpenGL引擎。
- Libgdx - 开源和跨平台的游戏引擎和SDK。
- Vuforia - 增强现实(AR)的库。
- Unity - 跨平台的游戏制作系统。
- Rajawali - Android OpenGL ES 2.0/3.0 引擎。
- Pull to refresh - support v4中提供的下拉刷新控件。
- Cardslib - 创建卡式控件的Android库。
- AndroidStaggeredGrid - 支持创建行列数不同的Android窗格视图控件。
- AQuery - AndroidQuery (AQuery) 是一个轻量级的库,用于在Android中执行异步操作视图元素。
- Flow - Flow – 是一个将app分成一系列独立的 Screen 组合的库
- Crouton -一个对上下文非常敏感的 android 通知库。
- DragSortListView - Android的ListView的扩展,允许拖拽和重新排序(不再更新维护)。
- MaterialProgressBar - 和Material design效果外观一致的进度条。
- AndroidFillableLoaders - 使用SVG路径实现的填充效果的进度条。对于创建有趣的应用logo也是一个很棒的有趣的选择。
- NexusDialog - 在Android中用少量代码简单快速地创建表格。
- Snap RecyclerView Utils - 无需创建Adapter生成一个或多个RecyclerView的布局。
- SwipeableCard - 像 StreetView 一样的实现滑动卡片的库。
- ActionBarSherlock - 支持Android旧版本的ActionBar。
- FadingActionBar - 渐变效果的ActionBar,你可以在新版PlayMusic应用中看到这个效果。
- SlidingMenu - 为应用创建滑动菜单的库。
- SlidingTutorial - 简单的库和教程,帮助创建炫酷的滑动效果Android应用。
- PagerSlidingTabStrip - 一个在 ViewPager 的不同页面之间导航时有交互指示效果的库。
- Page View indicator - 水平滑动的ViewPager的支持库。
- MaterialDrawer - 轻松实现MaterialDesign效果的抽屉导航.
- NineOldAndroids - 可以将HoneyComb(3.0 API 11)版本的动画效果兼容至1.0起所有版本的库。
- Rebound - Rebound是一个弹簧动态模型的Java库。
- Android View Animations - 有趣的View动画合集。
- Android-Transition - 轻松创建用户输入反馈的视图转变效果。
- Android-View-Actions - 轻松写出复杂的view动画效果。
- android-crop - 图片剪裁的库。
- CircularImageView - 自定义View,高性能地绘制圆形图片。
- Android-Image-Filter - 轻松实现图像滤镜的库。
- FloatingLabel - FloatingLabel 允许你创建一堆EditText。 无需使用Gradle或者MAVEN构建。
- MaterialEditText - 支持使用自定义颜色的浮动标签(Floating Labels)、单行超出文本省略(Single Line Ellipsis)、最大最小字数(Max/Min Characters)、帮助文本(Helper Text)和错误提示(Error Text)。
- Emojicon - 给你的应用添加表情符号。
- GridPasswrodView - 仿支付宝,微信支付密码输入框。
- Picasso - Android中强大的图片下载和缓存的库。
- Universal Image Loader - 非常好的异步、图片下载和缓存的库。
- Glide - 谷歌提供的滑动流畅的安卓图片加载和缓存库。
- Fresco - 管理图片及其内存使用的库。
- Gson - GSON是一个用于序列化和反序列化JSON的Java库。
- Jackson JSON Processor - 高性能地JSON处理工具。
- Fabric Crashlytics - 简单的崩溃上报解决方案。
- HockeyApp - 分发、崩溃上报、反馈和分析。
- Splunk MINT - 监测、崩溃上报、实时数据和统计。
- Bugsnag - 跨平台的错误监测。
- Ion - Android的一个不错的网络库。
- OkHttp - Android和Java使用的Http + SPDY协议的网络库。
- Asynchronous Http Client - 异步的Http库。
- RoboSpice - 轻松编写异步网络请求的库。
- IceNet - Android简单、快速的网络库。
- Android Volley - 官方提供的让网络请求更快、更简单的Http库。
- IceSoap - 为Android设计的简单、异步,基于注解的SOAP协议的库。
- node-android - 在Android上运行Node.js。
- android-remote-notifications - 从远程JSON文件拉取通知显示在你的应用中。
- Cupboard - 直接使用数据库或者ContentProvider轻松访问SQLite的框架。
- DbInspector - 调试时在手机上轻松查看应用数据库。
- Realm - SQLite和ORM类框架的替代选择。简单、快速和现代化。使用面向对象的API并提供多平台支持。
- RestorableSQLiteDatabase - 通过复制 SQLite 数据库对其进行封装,并提供了恢复功能。
- GreeDAO - 小巧快速的ORM解决方案。
- ORMLite - 为JDBC和Android提供的轻量级的对象关系映射的包。
- ActiveAndroid - 活动记录(Active record)风格的ORM框架。
- Sugar ORM - 超简单地使用Android数据库。
- DBFlow - 快速强大的ORM框架,编译时处理注解。
- NexusData - Android上的对象图(Object graph)和持久化框架。
- Retrofit - Restrofit将REST的API转换成Java接口。
- Robotium - 黑盒的UI自动化测试框架。
- Roboletric - 单元测试框架,在你的工作机器上的Java虚拟机中运行测试,而不是在模拟器中。
- AssertJ Android - 适用于Android的AssertJ。
- MobileAppTracking - 通过多种广告网络追踪你的市场广告情况。
- Mixpanel - 根据平台分析用户。
- Countly - 开源的手机和Web分析工具,推送消息、崩溃上报,基于Node.js、MongoDB和Linux实现。
- EventBus - EventBus是一个简化的应用间通信的库。
- Otto - Android的一种EventBus的实现。
- Weak handler - 内存使用更加安全的Handler实现。
- Byte Buddy - 运行时生成代码的库,支持Android。
- Secure Preference Manager - Android的Secure Preference Manager用不同的加密方式保护应用SharedPreference的安全。
- LeakCanary - 捕获内存泄漏的工具。
- Drekkar - 用于 WebView 和 嵌入式 JS 之间通信的的 EventBus 框架;
- Androl4b - 基于 ubuntu-Mate 的安卓安全虚拟机。
- DroidMVP - 一个小型安卓库,用于合并 MVP 、Passive View 和 Presentation Model。
- Gota - 简化安卓权限。
- SmartGattLib - 简化与蓝牙智能设备相关的工作(也就是我们所熟知的蓝牙4.0低功耗)。
- Android Support library - Android支持库(Android Support Library)的包是一些库的集合,为Android提供向下的兼容的API。
- Google Play Services - 这个库可以让你使用谷歌的各种服务,诸如账户同步、Google+(分享和单用户登录)、谷歌地图、位置信息的API、Play游戏、谷歌云消息、Android设备管理器等等。
- Tape - 一个轻量级的、快速的、事务性的,基于文件的先入先出的Android和Java框架。
- Guava: Google Core Libraries for Java - 集合(collections)、缓存、原语支持(primitives support)、并发库、通用注解、字符串处理、输入输出等等。
- Android Scripting - 让Android能够运行脚本语言。
- Android Priority Job Queue - Job Queue的一种实现方式,轻松计划后台运行的任务,提高用户体验(UX)和稳定性。
- RateMeMaybe - 询问用户是否愿意在PlayStore中为您的应用打分。
- Easy Rating Dialog - 这个库为评分应用提供了一个简单的方式来展示提示框。
- ZXing Android-Integration - 整合通过网络使用条形扫描器(BarCode Scanner)。
- Gradle Retrolambda Plugin - 在Android中使用Java 8的Lambdas表达式。
- Caffeine - 通用框架类的合集,让Android开发更快捷。
我个人的推荐是(现在)使用Android的API开发原生的应用。Scala可以让你用更清晰的代码开发原生应用。但是也有几种替代方案,在诸如跨平台开发时非常有用。
- Xamarin - 使用C#开发原生的IOS、Android、Mac和Windows应用的框架。
- PhoneGap - Adobe提供的开源框架,用于使用HTML、CSS和JavaScript开发跨平台的手机应用。
- Titanium - 使用JavaScript开发跨平台的本地应用的开源框架。
- NativeScript - 一个书体部分JavaScript开发本地(native)IOS和Android应用的开源框架。
- React Native - Facebook提供的使用React开发本地应用的框架。
- Ionic Framework - 使用针对移动设备优化的HTML、CSS和JS的AngularJS框架来开发混合模式移动应用(hybird app)。
- Apache Cordova - 基于Cordova的应用,核心是使用HTML、CSS和JavaScript这些Web技术开发应用。
- Reapp.io - 基于Cordova,使用针对移动设备优化HTML、CSS、JSS的ReactJS开发混合模式应用(hybrid app)的框架。
- Corona SDK - 开发原生IOS和Android应用的框架(尤其是游戏)。
- Scala on Android - Scala on Android 的官网介绍。
- Scaloid - 为Android开发者减轻使用Scala开发负担的库。
- Macroid - 一个Android平台功能模块化UI开发的库。
- Groovy on Android - Groovy on Android 的官网介绍。
- Groovy Language Support for Android - 在Android上编译Groovy的Gradle插件。
- SwissKnife - 一个多功能的Groovy库,包括使用注解实现Android的视图注入和线程。
- Anko - JetBrains提供的,使用Kotlin编写的Android平台的DSL工具。
- Kotterknife - 在ButterKnife基础上,使用Kotlin写成的Android视图注入工具。
- Android Kotlin Samples - 用Kotlin写成的简单Android代码Sample。
- KAndroid - 轻量级的库,提供有用的扩展功能来删除Android SDK的样板代码(boilerplate code)。
- awesome-android-performance - 一个性能优化相关的Android教程、视频和工具列表。
- Vogella Tutorials - 非常好的教程,由Lars Vogel编写。
- Android Design in Action Video series 这个系列教程由Google Android Desgin团队提供。
- Android Design in Action slides- 这个应用通过一系列视频让你实现幻灯片中所述的效果。
- Android DevBytes Video Series - Android Design实战系列对应的技术部分。
- Developing for Android - 这个系列的文章是Chet Hasae 和其他一些在谷歌工作的员工合写的,主要回答一些最常见的问题,诸如“在开发Android应用中有哪些需要牢记在心的准则。”
- Android Hive Tutorials - 适用于初学者的非常好的教程。
- Android Weekly - Android开发周报。
- Android Asset Studio - 图表和其它资源生成器。
- Android Action Bar Style Generator.
- Device Art Generator - 生成应用在真机截图的原图。
- Android UI design resources - 给你提供丰富的设计资源,由谷歌UI和UX领域的专家提供。
- Pencil Project - 一款开源的原型设计软件。
- Google Wear App - 开源的Google穿戴应用,使用语音识别进行费用计算。
- How to Make Android Apps - Derek Banas提供的视频教程。
- android-blogs - Android博客列表。
待补充
*值得关注的前端技术站点。*- 伯乐在线安卓频道:伯乐安卓分享Android开发文章,精选工具和安卓相关的行业动态。官网
待补充
* 安卓开发频道 微博:[@安卓开发频道](http://weibo.com/5038680568) * 「安卓应用频道」专注分享安卓应用相关内容,包括:安卓App开发、设计、推广和行业资讯。