Android优秀开源项目

画图:

- Java4Less (http://java4less.com/charts/chart.php?info=android) 
- Chart4J (http://code.google.com/p/charts4j/) 
- BlueChart (http://code.google.com/p/bluechart/)

- aChartEngine (http://code.google.com/p/achartengine/) 
- aiCharts (http://www.artfulbits.com/Android/aiCharts.aspx)


项目篇:

  • Apollo音乐播放器:就一个播放器,但是实现的很好
  • oschina客户端:oschina网站的客户端哦,wp版,iOS版都有开源
  • xabber实时聊天工具(基于xmpp协议):不评价了,反正算是同类中比较好的了
  • 四次元新浪微博客户端:今天才知道是开源的,赶紧收藏
  • Google IO:谷歌开发者大会应用,虽然有点难懂,还是很有参考价值(比如其中的图片加载)
  • eoe客户端:eoe网站Android客户端也开源咯,嘿嘿

组件篇:

  • Android-Flip:可以实现类似FlipBoard那种华丽丽的翻页
  • Drag-Sort-Listview:可以拖动item重新排序的listview,效果非常赞
  • HoloEveryWhere:咳咳,有些同学非常喜欢Android的holo风格,这个项目绝对让你happy
  • Universal-ImageLoader:这个经典的异步图片加载,不多说了
  • JazzyViewPager:这玩意可以让ViewPager翻起来更酷,谁用谁知道~~
  • SlidingMenu:这个是抽屉界面(就是facebook那种)的各种实现版本中,最好的,木有之一!
  • StickyListHeaders:iPhone上经常有这个,就是listview的……不知道怎么解释,自己下载看看吧
  • Android-PullToRefresh:下拉刷新,挺常用的一个组件
  • StaggeredGridView:这是一个瀑布流布局的实现,还不是很完善,但作为学习的案例或者在其基础上扩展还是不错的
  • android-async-http:android的异步请求组件,我个人习惯使用asynctask,不过这个实现还是很优秀的,也推荐给大家
  • ActionBarSherlock:大家熟知的ActionBar在2.x上的兼容性方案;类似的兼容性组件还有许多,有时间为大家一一列出;
  • facebook-android-sdk:不止是一个SDK那么简单哦,比某浪和某人的SDK强几个数量级;
  • NineOldAndroids:想在2.xSDK上使用Android 3.0新增的动画API,那就是它了;没用过的同学一定要试试哦,非常方便~
  • android-swipelistview:让listview的item可以向右滑动,新版Gmail和Pocket里面有用到哦~
  • DataDroid:Android的RESTful封装,没听过RESTful?你去死吧
  • EventBus:和上面的DataDroid同样属于美化底层代码的,这个lib简化了不同组件之间的事件传递
  • android-switch-backport:Android3.0以上才有的switch,有好心人给迁移到2.x上了,哈
  • PagerSlidingTabStrip:最新版的GooglePlay的那个tab效果,可炫可炫了
  • chromeview:我们都知道webview,也知道Android的chrome又自己的内核,这个项目就是把chrome的内核给导出来做成一个chromeview了,大家可以在自己的项目里用,有兴趣的可以玩玩

好吧,大中午的,就先写这些吧~~哦,顺便推荐大家几个网站,我常去的:

  • github:各种项目很多,就是不容易挖掘,但是开发者必备
  • oschina:曾经一般,现在越做越好了,很多开源项目;
  • eoeandroid:经过一番整理,现在非常强大;小作品居多;
  • AndroidViews:我曾经想做这么一个网站来着,很多开源组件的集合,嘿嘿
  • vogella:国外的一个教程网站,不是逗小孩玩的那种哦~
  • 爬爬的博客:欢迎造访,嘿嘿

大家都说github上面的项目不容易发现,但其实还是有办法的,比如:

  • 关注java项目排名:大家戳 这个网址
  • 搜索“Android”,并按star排序:戳 这里 直达
  • 最后,还有一招,就是关注些牛人,他们通常会关注或fork一些很有水平的项目

2013/04/22 21:43 更新,多谢 @zhmkof 推荐;
2013/04/23 14:39 更新,修复两个链接,多谢 @nainai007,@just4regist 提醒;
2013/04/23 18:19 更新,新增Facebook SDK;
2013/04/24 13:11 更新,修复Apollo播放器地址;
2013/04/24 18:09 更新,新增NineOldAndroids, android-swipelistview, DataDroid, EventBus
2013/04/27 10:35 更新,新增四次元
2013/05/04 18:05 更新,新增Google IO
2013/05/06 17:55 更新,新增eoe客户端
2013/05/11 09:25 更新,新增android-switch-backport,PagerSlidingTabStrip,chromeview


我的其他帖子:

Android 内存控制及OOM处理

Android应用推荐                  

**********************************************************************************************************************************************************

GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上。基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。



1. ActionBarSherlock(推荐)

ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库,通过一个API和主题,开发者就可以很方便地使用所有版本的Android动作栏的设计模式。

对于Android 4.0及更高版本,ActionBarSherlock可以自动使用本地ActionBar实现,而对于之前没有ActionBar功能的版本,基于Ice Cream Sandwich的自定义动作栏实现将自动围绕布局。能够让开发者轻松开发一款带动作栏(Action bar)的应用,并且适用于Android 2.x及其以上所有版本。

详情请参考:ActionBarSherlock

Android优秀开源项目_第1张图片



2. facebook-android-sdk

Facebook SDK for Android是一个开源库,允许开发者将Facebook集成到所开发的Android应用中。

如果想要获取更多关于示例、文档、将SDK集成到App中、源代码等信息,可直接登陆Facebook Developers查看。



3. SlidingMenuSlidingMenu Demos

SlidingMenu是一个开源的Android库,能够让开发者轻松开发一款应用,实现类似于Google+、Youtube和Facebook应用中非常流行的滑动式菜单。

使用SlidingMenu的Android应用:


  • Foursquare
  • Rdio
  • Plume


4. cocos2d-x

在移动开发领域,将Cocos2D-X用于主流iOS/android游戏开发的公司、开发团队多不胜数。cocos2d-x是一个开源的支持多平台的2D游戏框架,使用C++开发,基于cocos2d-iphone,在MIT许可证下发布。主分支在GitHub上使用OpenGL ES 2.0渲染,而旧版gles11分支则使用OpenGL ES 1.1渲染。

支持iOS、Android、Windows Phone 8、Bada、BlackBerry、Marmalade、Windows、Linux等多个平台。支持C++、Lua、JavaScript编程语言。


5. android

GitHub Android App是GitHub开源的Android客户端,支持Issues、Gists,并集成了新闻Feed,能够让你及时跟进组织及关注的开发者、库等。同时,该应用还提供了一个用户快速访问你所创建、监控及发布issue的面板,可查看并将问题加入到收藏夹,可对标签、里程碑和任务进行过滤配置。

android资源库包含了GitHub Android App的所有源代码。


6. Android-ViewPagerIndicator

ViewPager指针项目,在使用ViewPager的时候能够指示ViewPager所在的位置,就像Google Play中切换的效果一样,还能使用在应用初始化的介绍页面。

兼容Android支持库的ViewPager及ActionBarSherlock,最初是基于Patrik Åkerfeldt的ViewFlow,开发者可以直接登陆Google Play下载该项目的演示应用。


7. MonoGame

MonoGame是一个Microsoft XNA 4.x Framework的开源跨平台实现。用于让XNA开发者将他们在Xbox 360、Windows & Windows Phone上开发的游戏移植到iOS、Android、Mac OS X、Linux及Windows 8 Metro上,目前,PlayStation Mobile & Raspberry PI的开发正在进行中。

详情请参考:MonoGame


8. Android-PullToRefresh(推荐)

该项目用于为Android提供一个可重用的下拉刷新部件。它最初来源于Johan Nilsson的库(主要是图形、字符串和动画),但这些后来都已被取代。

Android优秀开源项目_第2张图片


9. android-async-http(推荐)

android-async-http是Android上的一个异步、基于回调的HTTP客户端开发包,建立在Apache的HttpClient库上。


10. Android-Universal-Image-Loader(推荐)

Android上最让人头疼的莫过于从网络获取图片、显示、回收,任何一个环节有问题都可能直接OOM,这个项目或许能帮到你。

Universal Image Loader for Android的目的是为了实现异步的网络图片加载、缓存及显示,支持多线程异步加载。它最初来源于Fedor Vlasov的项目,且自此之后,经过大规模的重构和改进。

Android优秀开源项目_第3张图片


11. GreenDroid

GreenDroid最初是由Cyril Mottier发起,是一个Android的UI开发类库,能够让UI开发更加简便,并且在应用中始终保持一致。

详情请参考:Cyril Mottier's Blog


12. Anki-Android

AnkiDroid是一个免费、开源的Android的闪存应用,可直接从Google Play进行下载。

详情请参考:ankidroid


13. android-actionbar

Action bar是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式。在大多数的情况下,当开发者需要突出展现用户行为或在全局导航的activity中使用action bar,因为action bar能够使应用程序给用户提供一致的界面,且系统能够很好地根据不同的屏幕配置来适应操作栏的外观。

Action bar的主要目的:


  • 提供一个用于识别应用程序的标示和用户的位置的专用空间。
  • 在不同的应用程序之间提供一致的导航和视觉体验。
  • 突出Activity的关键操作,并且在可预见的方法内给用户提供快捷的访问。


14. android-viewflow

android-viewflow是Android平台上的一个视图切换的效果库,ViewFlow相当于Android UI部件提供水平滚动的ViewGroup,使用Adapter进行条目绑定。


15. android-mapviewballoons

当使用Android地图外部库(com.google.android.maps)时,android-mapviewballoons会提供一个简单的方式来对地图覆盖进行标注,就是一个简单的信息气泡。

它由BalloonOverlayView组成,是一个代表显示你的MapView及BalloonItemizedOverlay的气泡的视图,BalloonItemizedOverlay是ItemizedOverlay的一个抽象扩展。


16. PushSharp

一个向iOS(iPhone/iPad APNS)、Android(C2DM和GCM)、Windows Phone和Windows 8设备发送推送通知的服务器端库。


17. androidannotations

Android Annotations是一个开源的框架,用于加速 Android应用的开发,可以让你把重点放在功能的实现上,简化了代码,提升了可维护性。


18. HockeyKit

Hockey是一个iOS Ad-Hoc自动更新框架。苹果App Store中的所有App都可以使用它,它能够显著地提高Beta测试的整个过程,分为两部分:服务器和客户端框架。服务器组件需要所有脚本,但在没有客户端库的情况下,也可以单独工作。它提供一个Web接口,Beta测试者可以使用它来安装最新的AdHoc配置文件,也可以直接在设备上通过Safari安装最新的Beta版本。

  • 只需在服务器上安装一次服务端,就可以处理包标识符不同的多个应用程序(有开发者强烈建议对Debug、AdHoc Beta和AppStore发布版使用不同的包标识符)。
  • 默认当App启动或唤醒时,客户端会从服务器检测更新,用户可以在设置对话框中进行修改:一天一次或手动检查更新。
  • 除了支持iOS,HokeyKit也支持Android平台,不过Android版还处在Alpha阶段,支持OTA及应用内更新。
  • 为HockeyKit用户提供服务器托管服务。


19. android-menudrawer(推荐)

Android上的菜单展示风格各异,其中用得最多且体验最好的莫过于左右滑动来显示隐藏的菜单,android-menudrawer是一个滑动式菜单实现,允许用户在应用当中实现无缝导航。该项目具有多种菜单展示效果,其中最常见的就是通过屏幕边缘拖动或点击动作栏的“向上”按钮显示。

实现功能:


  • 菜单可以沿着四个边放置。
  • 支持附加一个始终可见、不可拖动的菜单。
  • 菜单的内容和整个窗口都可以隐藏。
  • 可用于XML布局。
  • 显示当前可见屏幕的指示器。

Android优秀开源项目_第4张图片 Android优秀开源项目_第5张图片


20. android-flip

Aphid FlipView是一个能够实现Flipboard翻页效果的UI组件。

画图:

- Java4Less (http://java4less.com/charts/chart.php?info=android) 
- Chart4J (http://code.google.com/p/charts4j/) 
- BlueChart (http://code.google.com/p/bluechart/)

- aChartEngine (http://code.google.com/p/achartengine/) 
- aiCharts (http://www.artfulbits.com/Android/aiCharts.aspx)

你可能感兴趣的:(Android优秀开源项目)