三.完整项目
1.iosche
一句话介绍:谷歌2016开发者大会的展示项目
上榜理由:github上有13.4k个star,位居企业级项目排行榜第一位,牛逼的开发者,权威的设计模式,标准的项目写法,值得一试;笔者建议初学者down下源码,找到app入口,每个页面走一通,配合设计模式的概念加深理解。
github https://github.com/google/iosched
作者: Google
2.Plaid
一句话介绍:提供设计新闻和灵感的开源app
上榜理由:标准的material design设计,新闻类app,github上9k的star量值得你摒弃市面上参差不齐的新闻app,快点下手研究它吧!
github https://github.com/nickbutcher/plaid
作者: Nick Butcher
3.PocketHub
一句话介绍:Github的Android版
上榜理由:8.7K的star数量,Github的亲生儿子,开放的源码值得各位一探究竟
github https://github.com/pockethub/PocketHub
作者:Fadil Sutomo
使用:
down下所有源码
4.Signal Android
一句话介绍:Signal是一款安全通讯的短信类app,
上榜理由:7.9K的star数量,工具类app的标签属性,让它在排行榜中独一无二,如果你对短信app有兴趣,可以深入探究一番
github https://github.com/WhisperSystems/Signal-Android
作者:WhisperSystems
使用:github上down源码
5.android-UniversalMusicPlayer
一句话介绍:一款跨设备运行的多媒体app
上榜理由:googlesamples良心推荐,github拥有7.9k个star,可以在Android手机,汽车,平板,穿戴设备上使用,对于仅仅体验过Android手机开发的程序员,会不会很新奇呢?你值得一试!
github https://github.com/googlesamples/android-UniversalMusicPlayer
作者:Google
使用:github上down源码
6.HomeMirror
一句话介绍:如果你是个爱美的家伙那么你一定需要这面镜子!
上榜理由:工具类App很难再github上有一席之地,除非它提供特别新奇的功能,比如HomeMirror,github上有用7599个star,仅仅因为它提供了镜子的功能。从现在起,Android 手机、pad,都将成为你旅游居家神器,值得拥有!
github https://github.com/HannahMitt/HomeMirror
作者:Hannah Mittens
7.ExoPlayer
一句话介绍:一款 替代Android原生MediaPlayer的媒体播放器
上榜理由:也许是Google对自家MediaPlayer API不甚满意,所以诞生了ExoPlayer,ExoPlayer提供了强大的扩展API,使用它来制作多媒体播放器更快捷,更容易扩展,对多媒体播放器感兴趣的同仁们可以用它来大展身手了!6.9K个star,证明它有多受开发者们喜爱,更难能可贵的是,google还在更新维护着!
官网地址:https://google.github.io/ExoPlayer/
github https://github.com/google/ExoPlayer
作者:google
使用:
repositories {
jcenter()
}
compile 'com.google.android.exoplayer:exoplayer:r2.X.X' compile 'com.google.android.exoplayer:exoplayer-core:r2.X.X' compile 'com.google.android.exoplayer:exoplayer-dash:r2.X.X' compile 'com.google.android.exoplayer:exoplayer-ui:r2.X.X'
8.cheesesquare
一句话介绍:Android 材料设计的展示性项目
上榜理由:作者被称为是Android Support Lib背后的男人,他写出的展示性项目,怎能不推荐上榜?材料设计已经炒了好几年了,但作为最权威的展示项目,你一定需要它,6.7个star证明了它是多么的受欢迎。
github https://github.com/chrisbanes/cheesesquare
作者:Chris Banes
9.DanmakuFlameMaster
一句话介绍:android端开源弹幕引擎
上榜理由:bilibili出品,保证了它的纯种品质,并且ndk源码也一并开源,可谓业界良心,该弹幕引擎的开源节省了很多视频直播小伙伴的开发成本,笔者强力推荐!
github https://github.com/Bilibili/DanmakuFlameMaster
作者:bilibili
使用:
repositories {
jcenter()
}
dependencies {
compile 'com.github.ctiao:DanmakuFlameMaster:0.8.3' compile 'com.github.ctiao:ndkbitmap-armv7a:0.8.3' # Other ABIs: optional
compile 'com.github.ctiao:ndkbitmap-armv5:0.8.3' compile 'com.github.ctiao:ndkbitmap-x86:0.8.3' }
10.facebook-android-sdk
一句话介绍:一款提供接入facebook平台能力的框架
上榜理由:无论是你有接入facebook的需求,还是有学习自制sdk的需求,这都是很棒的途径;如何开发一套企业级sdk,是进阶优秀开发工程师的必须之路,4.1k个star,facebook持久更新质量保证,你值得拥有!
github https://github.com/facebook/facebook-android-sdk
作者:facebook
使用:
https://developers.facebook.com/docs/android
11.android-oss
一句话介绍:国外创意社区Kickstarter 开源的Android版客户端
上榜理由:精致的企业级APP,每个页面处理得都很棒,如果你志在成为一个优雅工程师,这款开源项目一定适合你,3.8k个star证明了它不俗的生命力
github:https://github.com/kickstarter/android-oss
作者:kickstarter
使用;
clone源码到本地
12.k-9
一句话介绍:Android端客户端邮件App
上榜理由:还记得张小龙的成名作——FoxMail吗?如果你想做一款移动端Email App,k-9具有很好的借鉴价值,此外对于应用层协议你也会有更深的认识
官网地址: https://k9mail.github.io/
github https://github.com/k9mail/k-9
使用:
clone项目到本地
13.Timber
一句话介绍:一款音乐播放器类App
上榜理由:3K个star,完全按照材料设计规范,提供十几种播放特性,而且还提供App的通用设置能力,这一点做的同样优秀,对于志在提升开发技术的同学值得一试
github https://github.com/naman14/Timber
作者:Naman Dwivedi
使用:
clone源码是一个好习惯
14.remusic
一句话介绍:仿网易云音乐Android版App
上榜理由:学习完Timer,是否还不太满足你的胃口?remusic可以满足你的胃口——它甚至可以拿去直接当上线项目了!2.9K个star,基于Timber的设计(入手的前提是先搞懂Timber)值得入手;有一个问题:如果由你重构,你会如何做呢?
github https://github.com/aa112901/remusic
作者:MW
使用:
clone项目
15.Douya
一句话介绍:开源豆瓣客户端
上榜理由:一款功能全面、架构设计不俗的开源APP;仅仅是对豆瓣APP设计思路不满而进行的重构项目,可见作者对产品的痴迷和热爱,2.9K个star,证明该项目并不是头脑发热一时兴起的作品,如果每一个idea都能实现,那我们的世界将会多么美妙!
github https://github.com/DreaminginCodeZH/Douya
作者:Zhang Hai
使用:
clone项目到本地
16.BookReader
一句话介绍:开源小说阅读器
上榜理由:2.7K个star,榜单里第一款阅读器APP,具有很高的学习价值(针对有兴趣往阅读工具类方向发展的同学)
github https://github.com/JustWayward/BookReader
作者:JustWayward 团队
使用:
clone到本地
17.bilibili-android-client
一句话介绍:高仿bilibili的Android客户端
上榜理由:2.5K个star,榜单里第一款视频直播开源App;适合对视频直播、社区互动感兴趣的同学;bilibili-android-client里使用了很多大型框架,此项目并不适合基础薄弱的同学,不要灰心,学习页面的布局设计也是值得的!
github https://github.com/HotBitmapGG/bilibili-android-client
作者:Hcc
使用:clone到本地
18.AndroidChromium
一句话介绍:Android版chrome浏览器
上榜理由:正如作者宣称的那样:
- 谷歌浏览器安卓版源码项目
- 世界级的安卓架构
- 理清本项目业务逻辑完全可以胜任国内一线公司工程师
对于志在梳理浏览器框架的你,值得拥有
github https://github.com/JackyAndroid/AndroidChromium
作者:JackYAndroid
使用:
clone源码到本地
四.开发框架:
(排名无先后、只按类型划分)
1.libgdx(https://github.com/libgdx/libgdx)
一句话介绍:一款跨平台的android端游戏开发框架
上榜理由:android端开发框架类第一名,11.7K的star量,游戏框架是它的专属标签,更重要的是它是跨平台的
官网地址 http://libgdx.badlogicgames.com/
github https://github.com/libgdx/libgdx
2.xUtils
一句话介绍:老牌企业级开发框架
上榜理由:4.9K个star,xUtils作为上古时期程序员备受推崇的开发框架,最大的原因——省事。xUtls包含四大模块,与之而来的是提供四大操作能力:数据操作、UI操作、Http协议操作、图片操作。xUtils作为笔者初学Android框架设计的导师型项目,在笔者多年经验中,看到xUtils作为众多中小银行Android端框架方案首选,足以证明它的受欢迎程度。该框架现在已经更新到了xUtils3,如果你对Android框架涉及有一定的想法,可以从xUtils入手,进阶为框架大师行列。虽然框架中很多引擎已经过时,各个模块的做法都可以用其他框架替代,但xUtils作为国内开发者的骄傲,上古时期的框架宠儿,值得你拥有!
github https://github.com/wyouflf/xUtils
作者:wyouflf
使用:
compile 'org.xutils:xutils:3.5.0'
3.android-common
一句话介绍: 一款android快速开发框架
上榜理由:滴滴资深级Android工程师出品,历经多年开发者的检验,以4.3K屹立于快速开发框架榜第三名,该框架提供了图片缓存、Http缓存、DropDownListView、下载模块、开发常用工具类等,作为上古时期程序员最早的总结性开发框架,它是一代人智慧的结晶,值得我们为作者Trinea鼓掌喝彩
github https://github.com/Trinea/android-common
作者:Trinea
使用:
clone代码到本地
4.Vitamio
一句话介绍:一款支持跨平台的Android多媒体开发框架
上榜理由:如果之前提到的exoplayer不能满足你开发多媒体的需求,那我保证vitamio值得你一试
github https://github.com/yixia/VitamioBundle
作者:yixia团队
使用:
clone源码到本地
5.Weex
一句话介绍:移动端跨平台开发的解决方案
上榜理由:14.4K个star,有成熟应用案例的企业级混合开发框架,阿里巴巴出品,为什么不试试呢?
官网地址:https://weex.apache.org/cn/
github https://github.com/alibaba/weex
作者:alibaba
6.cordova-android(Hybrid 开发框架、WebApp开发框架)
一句话介绍:跨平台的开发框架
上榜理由:cordova有足够的能力完成混合开发、WebApp开发的需求:不论你是Web开发者,或者是Native开发者,使用cordova都可以作出跨平台的App
官网地址:http://cordova.axuer.com/docs/zh-cn/latest/guide/overview/index.html
github https://github.com/apache/cordova-android
7.react-native
一句话介绍:一款以Javascript的语言来操作多个系统语言(Ios、Android)的框架
上榜理由:很难讲react-native属于什么类别,它适合前端工程师开发移动端App,也适合Native开发者进行跨平台的开发,但对于Navitve开发者来说陡峭的学习曲线会吓走一大批“框架爱好者”;前端界有一句名言:Web代表着未来,Native代表着现在,而我们处在现在与未来的道路上;49K个star,似乎让我们离未来更进一步
官网地址: http://facebook.github.io/react-native/docs/getting-started.html
github https://github.com/facebook/react-native
作者:facebook
五.其他:
1.AndroidUtilCode
一句话介绍:提供了数量庞大的工具类
上榜理由:10.8K的star个数,足以证明它是多么受欢迎,欢迎你提供常用的工具类壮大它!
github https://github.com/Blankj/AndroidUtilCode/blob/master/README-CN.md
File → Settings... → Plugins → Browse repositories...
and search for freeline
.
2.kotiln
一句话介绍:Google推出的Android编程语言
上榜理由:就像AndroidStudio取代Eclipse那样,Google将kotiln作为Android的官方编程语言,也许此举是为了避免同Oracle的专利诉讼,但kotlin 100%兼容java,大幅精简java代码量,以及函数式编程的思想这些优异的特性同意值得我们注意,还记得在榜单之前说过的吗?未来是kotlin的,当下是java的,但我们处在当下通往未来的道路上——学习未来的编程语言,提升自己的工作效率,早点下班打豆豆,何乐而不为?
github:https://github.com/JetBrains/kotlin
使用:
http://kotlinlang.org/docs/reference/ 提供了 api-android用例-书籍等资源
六.书籍类项目
(排序无先后)
1.Android developer中国官网培训课程
一句话介绍:符合中国国情的Google开发者官网的子产品——Android开发者官网
上榜理由:这里有培训课程、API用例课程、Sample用例、依赖库介绍、AndroidStudio官网...等等一系列公开免费的课程,尽管大部分内容还是英文讲解,可是你肯靠着英语词典一篇一篇啃完,相信我,你的Android知识水平将秒杀国内市面上大部分的Android书籍
官网地址:https://developer.android.google.cn/training/index.html
作者:google
2.android-architecture
一句话介绍:google提供的Android当下各种基本框架
上榜理由:看完它,mvp,mvvm都将入切瓜砍菜,秋风扫落叶一般...
github https://github.com/googlesamples/android-architecture
作者:google
3.andorid-open-project
一句话介绍:囊括Android几乎所有的开源项目的导航类目录
上榜理由:23k个star的导航类目录,与其盛名不符的是,该项目的导航、浏览阅读体验做的非常差,建议消遣之余阅读;推荐理由——中国人做的最全的Android 开源项目导航目录
github https://github.com/Trinea/android-open-project
作者:Trinea
4.awesome-android-ui
一句话介绍:Android的开源项目目录
上榜理由:国外的一款导航目录,23k个star