Android 是目前最流行的移动操作系统(还需要加之一吗?)。 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生了一大批的优秀的组件。
本文试图将目前流行的组件收集起来以供参考, 如果你发现本文还没有列出的组件,欢迎在评论中贴出来,我会定期的更新本文。
很好的中文教程
Google Android官方培训课程中文版
awesome-android, android列表。
另,github上的一个项目, 收集了好多的Android开源项目。
android-open-project。
以下是我收集和精选的Android开源项目。
ActionBarSherlock
一个功能强大的ActionBar组件(不仅仅是ActionBar)。 Android 4.0+上使用native action bar, 低版本的Android模拟实现。强大到无语了,必须关注的一个开源组件。
SlidingMenu
一款优秀的侧滑菜单组件。 Google+, YouTube和Facebook在它们的应用中采用的侧滑菜单流行开来, 国内也有很多的应用如网易新闻等也采用了这种菜单方式。 侧滑菜单组件很好几种, 尤以此款最为好用。 看看官方网站上的知名用户就知道了。
Android-Universal-Image-Loader
强大灵活的加载、缓存、显示图片的库。
Android-ViewPagerIndicator
滑动页面几乎成了现在国内的应用的标配了,尤其在你第一次安装/启动应用时, 总会有几张介绍页面让你滑动显示。 用它吧,不会辜负你的。
Android-PullToRefresh
你不陌生, 在列表或者视图的顶部或者底部拖动可以刷新数据和页面。可以和ListView、ExpandableListView、GridView、WebView、ScrollView、HorizontalScrollView、ViewPager配合使用。
picasso
强大的图像下载和缓存库。
Android-Bootstrap
bootstrap风格的按钮。 使用Font Awesome图标字体。
facebook-android-sdk
Facebook提供的SDK, 可以在应用中集成Facebook.
android-bootstrap
不同于上面的Android-Bootstrap。 此项目是一个Android应用程序的模版, 相当于一个脚手架的功能。
AndroidStaggeredGrid
想做瀑布流式的应用吗?用它吧。
cardslib
一种卡片式的布局控件。 记得以前的有道词典的默认页就是这种布局。
PhotoView
ImageView扩展, 支持放缩和手势。
ListViewAnimations
为ListView增加动画, 还提供滑动删除选定项的功能。 类似Android的邮件的删除操作。
ion
又一个图像异步加载库。至少推荐三个了, 轮子不少。
android-menudrawer
又一个滑动菜单的组件。
android-swipelistview
又一个ListView扩展, 支持滑动操作。
android-pulltorefresh
又一个拖动刷新的组件。到此为止说了好多又了。 因为有些功能确实有多个不错的实现。
Crouton
Toast之外的另以选择。
StickyListHeaders
header可以固定的组件。 看下图。
drag-sort-listview
在ListItem拖动重排序。 开发者已经放弃维护了但是关注者依然不少。
FreeFlow
comcast出品的一个布局引擎。 FreeFlow让你很容易的定制布局和漂亮的转换动画。
看到comcast好激动, 因为他是笔者公司最大的客户。
FadingActionBar
折叠风格的ActionBar. 说起ActionBar, 第一选择不是ActionBarSherlock么?
android-viewflow
可以水平滚动的视图。
android-flip
可以实现类似Flipboard一样的翻页效果。
android-times-square
square出品的日期选择组件。
circular-progress-button
环形进度条按钮。
android-viewbadger
为视图增加badger。可以做的更好看点。
AndroidViewAnimations
漂亮的视图动画。
Android-SlideExpandableListView
有一个可以滑动的ExpandableListView组件。
pinned-section-listview
GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView
android-process-button
很酷的一个组件,可以在按钮下部显示漂亮的进度条,就像GMAIL一样。
android-betterpickers
更好的时间、日期库。
StaggeredGridView
瀑布流。类似Pinterest。
ProgressWheel
环形进度条。
Calligraphy
在Android中更容易的使用字体。
android-satellite-menu
类似Path一样的菜单。
android-actionbarstylegenerator
action bar风格在线制作。
SuperToasts
扩展的Toast.
GlassActionBar
毛玻璃效果的ction bar.
GraphView
可以产生放缩的线图和直方图。
StickyGridHeaders
可以固定header和分区的Grid。
BlurEffectForAndroidDesign
模糊效果的演示。
ArcMenu
又一个类似Path的环形菜单。
cropper
图像剪切和旋转。
Android-AppMsg
chromeview
Android webview组件的实现, 但是基于最新的Chromium 代码。
StandOut
很容易的创建弹出窗口。
android-iconify
集成FontAwesome 。
android-gif-drawable
看名字就知道了。
NumberProgressBar
漂亮的带数字的进度条。
Android-SwipeToDismiss
演示ListView滑动删除。
Shimmer-android
闪烁发光的文本框。
HoloColorPicker
Holo风格的颜色选择器。
android-crop
图像裁剪
android-edittext-validator
文本框校验
MultiChoiceAdapter
ListView 支持多选。
PinterestLikeAdapterView
瀑布流。
MPAndroidChart
非常不错的图表工具。
Android-Action-Bar-Icons
图标资源。
Android-UndoBar
android-pdfview
AndroidCharts
图表控件
Android-Charts
国人实现的图表控件
desCharts
图表控件
PinnedHeaderExpandableListView
国人实现的一个ExpandableListView,头部可以固定, 并且可以伸缩。
XCL-Charts
国人出品, 图表控件,种类很多。
PullToZoomInListView
滑动ListView时使其HeaderView跟随滑动缩放.
NotBoringActionBar
拖动时顶部可以收缩。
FancyCoverFlow
transparent-over-animtabsview
模仿网易云音乐
chromium-webview-samples
webview例子。
https://github.com/GoogleChrome/chromium-webview-samples
https://developer.chrome.com/multidevice/webview/gettingstarted
http://developer.android.com/guide/webapps/webview.html
http://developer.android.com/reference/android/webkit/WebView.html
http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/1010/1569.html
roboguice
google guice框架在Android平台上的实现。 什么事guice? 它是一个类似Spring的IOC框架。 什么是IOC? 算了,你还是先学习Java的基础知识吧。
android-async-http
基于Apache http client实现的支持异步、回调的android http client组件。
androidannotations
将注解引入到Android开发中,极大的减少代码里,可以更好的维护代码。
retrofit
类型安全的Restful client库。
dagger
一个快速的依赖注入库。这个square公司出了不少的组件库。 square公司就是那个移动支付的创业公司。
okhttp
还是square出品, HTTP+SPDY 客户端。
EventBus
一个专为Android优化的发布订阅框架, event bus模式。 可以在Activity, Fragment 和后台线程之间交流数据。
butterknife
专为视图注入库。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class ExampleActivity extends Activity {
@InjectView(R.id.user) EditText username;
@InjectView(R.id.pass) EditText password;
@OnClick(R.id.submit)
void submit() {
// TODO call server...
}
@Override
public
void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_activity);
ButterKnife.inject(
this);
// TODO Use "injected" views...
}
}
|
robospice
一个模块化的Android类库, 可以更容易的编写异步的长时间运行的任务。
**
一个加强的基于Guava event bus库。 square出品。
AndroidAsync
又是异步处理库, 支持socket,http (client+server),websocket 和socket.io ,基于nio。
ActiveAndroid
active record风格的操作Android SQLite 数据库。
androidquery
JQuery很熟悉吧。 这是Android版的JQuery。
greenDAO
一个轻量级的快速的ORM方案。 操作SQLite 数据库。
Bolts-Android
一套底层库。
scaloid
极大的减少Android得代码,更易维护。
conceal
Facebook的快速加密类。
android-common
国人实现的一个工具包。
xUtils
国人实现的一个工具包。
android-priority-jobqueue
Path出品的job queue。
android-sqlite-asset-helper
数据库辅助类。 包括数据库的创建与升级。
tape
一组queue类。 square出品。
spring-android
不多说了。
joda-time-android
为Android做了优化
spydroid-ipcamera
将你的收集作为监控设备。
libgdx
libGDX是基于OpenGL的跨平台的游戏开发框架。
AndEngine
知名的Android 2D OpenGL 游戏引擎。
ogengine
国人开发的国际著名开源引擎AndEngine的一个分支 (往上看)。遵循LGPL开源协议使用OpenGL ES进行图形绘制。同时集成了Box2D物理引擎,因此可以实现复杂的物理效果。
citrus
快速且轻量级的2D & 3D游戏引擎。
Cocos2d-Android
知名的游戏引擎
gameclosure
JavaScript 游戏引擎
游戏引擎列表
维基百科上的各种游戏引擎, 各种平台的引擎列表, 全。
PhoneCap
早在2011年10月,Adobe收购了Nitobi Software和它的PhoneGap产品,然后宣布这个移动开发框架将会继续开源,并把它提交到Apache Incubator,以便完全接受ASF的管治。
Cordova
Cordova是贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。你可以把他想象成类似于Webkit和Google Chrome的关系。
Adobe将会继续以Cordova加上PhoneGap Build和Adobe Shadow的组合提供PhoneGap。
Cordova-SQLitePlugin
1
|
var db =
window.sqlitePlugin.openDatabase({name:
"my.db"});
|
awesome-cordova
Cordova插件列表
jquerymobile
JQuery公司出品的移动开发框架。
awesome-html5
开源的Javascript游戏引擎
[Pixi.js](https://github.com/GoodBoyDigital/pixi.js) phaser
[MelonJS](https://github.com/melonjs/melonJS) kiwi.js
[Crafty](https://github.com/craftyjs/Crafty) PhysicsJS
[cutjs](https://github.com/piqnt/cutjs) cocos2d