【伯乐在线导读】:GitHub 上有一个 Awesome – XXX 系列的资源整理。Awesome Android 是JStumpp 发起维护的 Android 资源列表,内容包括:图表工具、游戏开发、GUI、崩溃检测、调试工具、通知、图片加载、依赖注入等等。
伯乐在线已在 GitHub 上发起「Android 资源大全中文版」的整理。欢迎扩散、欢迎加入。
顺带推荐 Java 资源大全 https://github.com/jobbole/awesome-java-cn
目录
- 库
- 图表
- 依赖注入
- 游戏开发
- 图形界面
- ActionBar
- 导航栏
- 动画
- 图片
- 输入
- 图片加载
- JSON
- 崩溃检测
- 网络请求
- 通知
- 数据库
- ORM
- REST
- 测试
- 行为监测
- 集合框架
- 调试工具
- 无线
- 其它
- 资源
- 更多库的列表
- 非 Java 开发安卓应用的替代选择
- C#
- HTML, CSS and 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 引擎。
GUI
- 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 一样的实现滑动卡片的库。
ActionBar
- ActionBarSherlock – 支持Android旧版本的ActionBar。
- FadingActionBar – 渐变效果的ActionBar,你可以在新版PlayMusic应用中看到这个效果。
Navigation
- SlidingMenu – 为应用创建滑动菜单的库。
- SlidingTutorial – 简单的库和教程,帮助创建炫酷的滑动效果Android应用。
- PagerSlidingTabStrip – 一个在 ViewPager 的不同页面之间导航时有交互指示效果的库。
- Page View indicator – 水平滑动的ViewPager的支持库。
- MaterialDrawer – 轻松实现MaterialDesign效果的抽屉导航.
Animations
- 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 – 给你的应用添加表情符号。
图片加载
- Picasso – Android中强大的图片下载和缓存的库。
- Universal Image Loader – 非常好的异步、图片下载和缓存的库。
- Glide – 谷歌提供的滑动流畅的安卓图片加载和缓存库。
- Fresco – 管理图片及其内存使用的库。
JSON
- 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文件拉取通知显示在你的应用中。
Database
- Cupboard – 直接使用数据库或者ContentProvider轻松访问SQLite的框架。
- DbInspector – 调试时在手机上轻松查看应用数据库。
- Realm – SQLite和ORM类框架的替代选择。简单、快速和现代化。使用面向对象的API并提供多平台支持。
- RestorableSQLiteDatabase – 通过复制 SQLite 数据库对其进行封装,并提供了恢复功能。
ORM
- GreeDAO – 小巧快速的ORM解决方案。
- ORMLite – 为JDBC和Android提供的轻量级的对象关系映射的包。
- ActiveAndroid – 活动记录(Active record)风格的ORM框架。
- Sugar ORM – 超简单地使用Android数据库。
- DBFlow – 快速强大的ORM框架,编译时处理注解。
- NexusData – Android上的对象图(Object graph)和持久化框架。
REST
- Retrofit – Restrofit将REST的API转换成Java接口。
Testing
- Robotium – 黑盒的UI自动化测试框架。
- Roboletric – 单元测试框架,在你的工作机器上的Java虚拟机中运行测试,而不是在模拟器中。
- AssertJ Android – 适用于Android的AssertJ。
Tracking
- 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开发更快捷。
资源
- 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博客列表。
非Java开发安卓应用
我个人的推荐是(现在)使用Android的API开发原生的应用。Scala可以让你用更清晰的代码开发原生应用。但是也有几种替代方案,在诸如跨平台开发时非常有用。
C#
- Xamarin – 使用C#开发原生的IOS、Android、Mac和Windows应用的框架。
HTML, CSS and Javascript
- 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)的框架。
Lua
- Corona SDK – 开发原生IOS和Android应用的框架(尤其是游戏)。
Scala
- Scala on Android – Scala on Android 的官网介绍。
- Scaloid – 为Android开发者减轻使用Scala开发负担的库。
- Macroid – 一个Android平台功能模块化UI开发的库。
Groovy
- Groovy on Android – Groovy on Android 的官网介绍。
- Groovy Language Support for Android – 在Android上编译Groovy的Gradle插件。
- SwissKnife – 一个多功能的Groovy库,包括使用注解实现Android的视图注入和线程。
Kotlin
- Anko – JetBrains提供的,使用Kotlin编写的Android平台的DSL工具。
- Kotterknife – 在ButterKnife基础上,使用Kotlin写成的Android视图注入工具。
- Android Kotlin Samples – 用Kotlin写成的简单Android代码Sample。
- KAndroid – 轻量级的库,提供有用的扩展功能来删除Android SDK的样板代码(boilerplate code)。
性能
- awesome-android-performance – 一个性能优化相关的Android教程、视频和工具列表。
欢迎加入我们
伯乐在线已在 GitHub 上发起「Android 资源大全中文版」的整理。欢迎扩散、欢迎加入。
普通的 Java 资源,请查看 https://github.com/jobbole/awesome-java-cn 。