20+个很棒的Android开源项目

20+个很棒的Android开源项目 本文摘自文章: 20+ Awesome Open-Source Android Apps To Boost Your Development Skills.

考虑到原文在墙外, 故分享在此, 希望让更多开发者看到.

LeafPic 难度: 初级.

Open Source LeafPic

图片和视频的Gallery app.实现了动态主题. Simple Calendar 难度: 初级. 一个简单好用的Calendar应用, 完全用Kotlin实现. 另外可以从这个项目学习一下自定义的桌面widgets. Amaze File Manager 难度: 中级.

Open Source Amaze File Manager

一个文件管理器. 可以学习SD卡上的文件操作. 但不建议学习这个项目中的编码标准. Easy Sound Recorder 难度: 初级.

Open Source Easy Sound Recoder

一个简单的录音程序, 遵循Material Design. MLManager 难度: 初级. 一个App管理器, 可以学习如何得到所有安装应用的详细信息, 提取APK, 卸载程序等. PhotoAffix 难度: 初级. 一个简单的应用, 可以水平或竖直地拼接照片. 可以学习创建自定义View. MovieGuide 难度: 中级.

Open Source MovieGuide

一个流行电影浏览应用.使用了: MVP, Clean Architecture, RxJava, Dagger2. AnExplorer 难度: 中级. 一个轻量级的文件管理器, 为手机和平板设计. 可以学到很多文件处理, 权限管理, loaders, 自定义View等相关的东西. Minimal ToDo 难度: 初级. 一个Material Design的To-Do应用.可以学到一些Android开发的基本知识, 适合初学者学习. 但不要学习里面的包结构和代码规范, 这些不太标准. Timber 难度: 高级.

Open Source Timber

一个很漂亮的, 功能完善的音乐播放器. 这个项目很大, 所以对初学者来说想要一下把握全部的内容可能会有点困难, 但是对中高级开发者来说看一看应该会觉得挺有意思. AnotherMonitor 难度: 中级.

Open Source AnotherMonitor

如果你想要学监控Android进程, 内存占用, CPU使用以及与这些相关的东西, 这个项目很适合. 这个项目很小也很好理解, 但是编码和架构设计不是很好, 不应该遵循. InstaMaterial 难度: 初级. 这是一个学习Material Design的好项目. 这个项目复制了一些Instagram的功能, 结合了Material Design来实现. 这里有很多Material Design的元素, 动画和转场. 项目简单易懂, 适合各个阶段的学习者. CoCoin 难度: 简单.

Open Source CoCoin

一个详尽的个人财务记账应用, 界面干净漂亮. 如果你想学习如何处理大量用户数据, 根据这些数据绘制各类图表, 写一些很酷的自定义View, 那么这个开源项目很适合你. OmniNotes 难度: 中级. 如果你想建一个跟Evernote类似的功能强大的笔记应用, 那么这个项目可以看看. 这个项目很大, 有很多功能比如分享和搜索笔记, 上传图片, 视频, 音频, 在笔记中绘制草图, 添加提醒等. Clip Stack 难度: 初级. 一个简单的剪贴板管理器.项目很小, 简单易懂. 但是包结构和代码架构, 命名及代码规范不推荐学习. 并且这个项目已经不再维护了. Super Clean Master 难度: 高级.

Open Source Super Clean Master

一键清理开源版, 包括内存加速, 缓存清理, 自启管理, 软件管理等. 代码很优雅, 但是项目有一点复杂, 如果你想弄明白所有的事情, 得多花一点时间. Travel Mate 难度: 中级. 一个旅游导览类应用, 依赖于位置和地图.代码质量尚未达到标准, 但是对初级和中级开发者来说还是有很多值得学习的地方. KISS 难度: 中级.

Open Source KISS

一个简单快速轻量级的launcher应用. 可以从中学习一些比较酷的features. 项目很小很简单. Turbo Editor 难度: 中级.

Open Source Turbo Editor

一个简单但强大的文字编辑应用. 你也可以使用这个编辑器来写代码, 对不同的语言支持代码高亮. 从这个项目你可以学到如何做一个稳定健壮的文字(或代码)编辑器. Wally 难度: 初级. 一个简单快速的壁纸应用.对于初学者来说可以学到很多东西. 这个应用的架构很好, 使得这个应用易于维护和扩展. 这个应用的目的虽然简单, 但是实现目的的方法很好. Pedometer 难度: 初级.

Open Source Pedometer

一个简单轻量级的计步器, 使用硬件传感器来计算步数, 同时考虑到了电量使用问题, 最小化电量消耗. 对于学习计步器实现来说是一个好项目, 但是代码标准和设计架构可能不够好.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

一张GIF引发的微信崩溃

今早,朋友发了一个表情给我,看下面,就是这个。。 ? 这不是天线宝宝卖萌系列表情包么,正当我看着俩宝宝撞屁股的GIF图寻开心的时候,微信突然卡死闪退了。。然后我...

3409
来自专栏钱塘大数据

【钱塘号专栏】大神级程序员才知道的40个小技巧

1、重构是程序员的主力技能。 2、工作日志能提升脑容量。 3、先用profiler调查,才有脸谈优化。 4、注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎...

3217
来自专栏牛客网

成都-阿里Java研发工程师面经

11号去成都参加阿里面试,网上预约的3点,两点半就到了,刚签完到马上就喊去面试。经历了一面二面和HR面。 一面 1.介绍一下你的项目,说一下哪个项目印象最深 ...

4338
来自专栏数据的力量

职场干货|高效工作的信息搜集及整理术

1142
来自专栏云端架构

【云端架构】程序员常用四十个小技巧

4、注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。

4549
来自专栏微信终端开发团队的专栏

关于Android N的那些事

今年3月,Google破天荒提前半年发布了Android N开发者预览版。当然,作为一个不合格的谷粉并没有第一时间体验安装,因为至今仍然能够回忆起来去年今日此门...

2996
来自专栏嵌入式程序猿

嵌入式系统开发过程中的常见问题和解决方法

1. Bootloader如何写入Flash ? 初学者一般都会遇到如何将程序写入处理器的问题。对于不同的处理器,可以采用不同的方法。例如Intel的Xscal...

3597
来自专栏企鹅号快讯

《design data-intensive application》阅读笔记之一

于2017年末得知了一本神书《design data-intensive application》,读完即可惜,如果早拿到这本书,就不会纠结于很多分布式系统和数...

2185
来自专栏鸿的学习笔记

《design data-intensive application》阅读笔记之一

于2017年末得知了一本神书《design data-intensive application》,读完即可惜,如果早拿到这本书,就不会纠结于很多分布式系统...

792
来自专栏ThoughtWorks

ArchUnit,架构守护神 | 雷达哔哔哔

ArchUnit是一个基于 Java 的测试库,用于检查代码的结构特性,如包和类的依赖关系、注解验证,甚至还能检查代码分层是否一致。我们很喜欢 ArchUnit...

3202

扫码关注云+社区

领取腾讯云代金券