以下这些开源项目都是从GitHub上筛选的,我强烈推荐android程序源代码有时间的时候自己在上面淘淘,或许能发现自己须要的开源程序。

了解开源项目有两个优点:

1.借鉴代码,一般来说。火爆的开源项目的代码质量都相当高,当我们感觉自己的学习遇到瓶颈的时候,细致研究别人的开源码会让自己受益匪浅。

2.直接用事实上现的功能:android开源项目一般来说都是组件类的,而不是一个完整的应用程序。换句话说,非常多都是提供了一种经常使用功能的解决方式,比方最著名的ActionBarSherlock就是一个实现动作栏的UI组件。假设自己实现,相信会话费你非常长时间,而且还有可能以失败告终。

以下这些开源项目自己亲自用过的不多,仅仅有ActionBarSherlock和SlidingMenu两个,只是说真的,效果确实不错。

1. ActionBarSherlock

ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库,通过一个API和主题,开发人员就能够非常方便地使用全部版本号的Android动作栏的设计模式。

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

详情请參考:ActionBarSherlock

2. facebook-android-sdk

Facebook SDK for Android是一个开源库,同意开发人员将Facebook集成到所开发的Android应用中。

假设想要获取很多其它关于演示样例、文档、将SDK集成到App中、源码等信息。可直接登陆Facebook Developers查看。

3. SlidingMenu

id=com.slidingmenu.example" target="_blank" style="">SlidingMenu
Demos

SlidingMenu是一个开源的Android库,可以让开发人员轻松开发一款应用,实现类似于Google+、Youtube和Facebook应用中很流行的滑动式菜单。

使用SlidingMenu的Android应用:

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

id=com.github.mobile" target="_blank" style="">GitHub Android App是GitHub开源的Androidclient。支持Issues、Gists。并集成了新闻Feed。可以让你及时跟进组织及关注的开发人员、库等。

同一时候,该应用还提供了一个用户高速訪问你所创建、监控及公布issue的面板,可查看并将问题增加到收藏夹。可对标签、里程碑和任务进行过滤配置。

android资源库包括了GitHub Android App的全部源码。

6. Android-ViewPagerIndicator

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

兼容Android支持库的ViewPager及ActionBarSherlock,最初是基于Patrik Åkerfeldt的ViewFlow,开发人员能够直接登陆

id=com.viewpagerindicator.sample" target="_blank" style="">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的库(主要是图形、字符串和动画)。但这些后来都已被代替。

9. android-async-http

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

10. Android-Universal-Image-Loader

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

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

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设备发送推送通知的server端库。

17. androidannotations

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

18. HockeyKit

Hockey是一个iOS Ad-Hoc自己主动更新框架。

苹果App Store中的全部App都能够使用它,它能够显著地提高Beta測试的整个过程,分为两部分:server和client框架。server组件须要全部脚本,但在没有client库的情况下。也能够单独工作。它提供一个Web接口,Beta測试者能够使用它来安装最新的AdHoc配置文件。也能够直接在设备上通过Safari安装最新的Beta版本号。

  • 仅仅需在server上安装一次服务端。就能够处理包标识符不同的多个应用程序(有开发人员强烈建议对Debug、AdHoc Beta和AppStore公布版使用不同的包标识符)。

  • 默认当App启动或唤醒时。client会从server检測更新,用户能够在设置对话框中进行改动:一天一次或手动检查更新。

  • 除了支持iOS,HokeyKit也支持Android平台,只是Android版还处在Alpha阶段,支持OTA及应用内更新。

  • 为HockeyKit用户提供server托管服务。

19. android-menudrawer

Android上的菜单展示风格各异,当中用得最多且体验最好的莫过于左右滑动来显示隐藏的菜单。android-menudrawer是一个滑动式菜单实现。同意用户在应用当中实现无缝导航。

该项目具有多种菜单展示效果,当中最常见的就是通过屏幕边缘拖动或点击动作栏的“向上”button显示。

实现功能:

  • 菜单能够沿着四个边放置。

  • 支持附加一个始终可见、不可拖动的菜单。

  • 菜单的内容和整个窗体都能够隐藏。

  • 可用于XML布局。

  • 显示当前可见屏幕的指示器。

20. android-flip

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

以上为GitHub上最受欢迎的Android开源项目TOP20

GitHub上最受欢迎的Android开源项目TOP20的更多相关文章

  1. GitHub上最受欢迎的iOS开源项目TOP20

    AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是GitH ...

  2. 40个GitHub上最受欢迎的iOS开源项目

    40个GitHub上最受欢迎的iOS开源项目(一) http://www.weste.net/2013/8-1/92975.html 40个GitHub上最受欢迎的iOS开源项目(二) http:// ...

  3. GitHub上易于高效开发的Android开源项目TOP20--适合新手

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

  4. GitHub上排名前100的Android开源库介绍(来自github)

    本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...

  5. 我的Android进阶之旅】GitHub 上排名前 100 的 Android 开源库进行简单的介绍

    GitHub Android Libraries Top 100 简介 本文转载于:https://github.com/Freelander/Android_Data/blob/master/And ...

  6. GitHub上排名前100的Android开源库介绍

    GitHub上排名前100的Android开源库介绍 文章来源: http://www.open-open.com/news/view/1587067#6734290-qzone-1-31660-bf ...

  7. GitHub上有很多不错的iOS开源项目

    GitHub上有很多不错的iOS开源项目,个人认为不错的,有这么几个:1. ReactiveCocoa:ReactiveCocoa/ReactiveCocoa · GitHub:GitHub自家的函数 ...

  8. 推荐大家在GitHub 上值得关注学习的 iOS 开源项目

    GitHub上有很多不错的iOS开源项目,和大家特别推荐以下几个项目: 1. ReactiveCocoa GitHub链接:ReactiveCocoa/ReactiveCocoa GitHub自家的函 ...

  9. GitHub上我收藏Java及Android的项目Demo

    接触编程不久但浏览频率最高的还是GitHub毕竟它真的是程序员必不可少的新世界. (2016/9/23更新) 静态更新,很强势你值得拥有 更新资源不需要重新安装APK (2016.9.10更新) ht ...

随机推荐

  1. 分析内存使用情况 (JavaScript)

    [此文档是初定版,随时可能进行更改.] JavaScript 内存分析器在 Visual Studio 2012 更新 1 和 Visual Studio 2013 中提供,旨在帮助你了解内存使用量和 ...

  2. servlet 与缓存(4)

    1.设置缓存的两种情况: 第一种:对于不常常变化的数据,在servlet中能够为其设置合理的缓存时间值,以避免浏览器频繁向server发送请求,提升server的性能. 另外一种:假设要实现一种高级功 ...

  3. 查询PO的预付款剩余金额

    FUNCTION zrfc_mm016. *"---------------------------------------------------------------------- * ...

  4. Excel 公式(细节若干)

    查找与引用: 1.如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用 MATCH 函数而不是 LOOKUP 函数. 2.VLOOKUP的第一个参数允许使用通配符“*”来表示包含的意思,把*放在字 ...

  5. SLF4J warning or error messages and their meanings(转)

    The method o.a.commons.logging.impl.SLF4FLogFactory#release was invoked. Given the structure of the ...

  6. 通过 Spring RestTemplate 调用带请求体的 Delete 方法(Delete With Request Body)

    Spring 框架的RestTemplate 类定义了一些我们在通过 java 代码调用 Rest 服务时经常需要用到的方法,使得我们通过 java 调用 rest 服务时更加方便.简单.但是 Res ...

  7. POJ 3892 RSA Factorization

    题目地址:http://poj.org/problem?id=3892 题目大意:RSA分解. 这儿的N比较大,要用高精度,如果一般的肯定分解不了,但是这儿有一个限制 |q-kp|<=10000 ...

  8. 服务确定(服务类收货ML81N)

    FUNCTION zrfc_mm005. *"---------------------------------------------------------------------- * ...

  9. CSS中position详解与常见应用实现

    在web前台开发时候,我们必不可少的会用到postion属性进行布局定位.今天总结了一下position知识点,与常用功能与大家分享,欢迎大家交流指正. 首先我们对postion属性进行详解. 在CS ...

  10. QT+vs2010下改变可执行程序的图标

    原地址:http://blog.163.com/tijijun@126/blog/static/6820974520134209457308/ 在解决方案下面的工程里,点击右键 ->选择[添加( ...