20+个很棒的Android开源项目

本文摘自文章: 20+ Awesome Open-Source Android Apps To Boost Your Development Skills.

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

LeafPic

难度: 初级.

图片和视频的Gallery app.
实现了动态主题.

Simple Calendar

难度: 初级.

一个简单好用的Calendar应用, 完全用Kotlin实现.

另外可以从这个项目学习一下自定义的桌面widgets.

Amaze File Manager

难度: 中级.

一个文件管理器.

可以学习SD卡上的文件操作.

但不建议学习这个项目中的编码标准.

Easy Sound Recorder

难度: 初级.

一个简单的录音程序, 遵循Material Design.

MLManager

难度: 初级.

一个App管理器, 可以学习如何得到所有安装应用的详细信息, 提取APK, 卸载程序等.

PhotoAffix

难度: 初级.

一个简单的应用, 可以水平或竖直地拼接照片.

可以学习创建自定义View.

MovieGuide

难度: 中级.

一个流行电影浏览应用.
使用了: MVP, Clean Architecture, RxJava, Dagger2.

AnExplorer

难度: 中级.

一个轻量级的文件管理器, 为手机和平板设计.

可以学到很多文件处理, 权限管理, loaders, 自定义View等相关的东西.

Minimal ToDo

难度: 初级.

一个Material Design的To-Do应用.
可以学到一些Android开发的基本知识, 适合初学者学习.

但不要学习里面的包结构和代码规范, 这些不太标准.

Timber

难度: 高级.

一个很漂亮的, 功能完善的音乐播放器.

这个项目很大, 所以对初学者来说想要一下把握全部的内容可能会有点困难, 但是对中高级开发者来说看一看应该会觉得挺有意思.

AnotherMonitor

难度: 中级.

如果你想要学监控Android进程, 内存占用, CPU使用以及与这些相关的东西, 这个项目很适合.

这个项目很小也很好理解, 但是编码和架构设计不是很好, 不应该遵循.

InstaMaterial

难度: 初级.

这是一个学习Material Design的好项目. 这个项目复制了一些Instagram的功能, 结合了Material Design来实现.

这里有很多Material Design的元素, 动画和转场.

项目简单易懂, 适合各个阶段的学习者.

CoCoin

难度: 简单.

一个详尽的个人财务记账应用, 界面干净漂亮.

如果你想学习如何处理大量用户数据, 根据这些数据绘制各类图表, 写一些很酷的自定义View, 那么这个开源项目很适合你.

OmniNotes

难度: 中级.

如果你想建一个跟Evernote类似的功能强大的笔记应用, 那么这个项目可以看看.

这个项目很大, 有很多功能比如分享和搜索笔记, 上传图片, 视频, 音频, 在笔记中绘制草图, 添加提醒等.

Clip Stack

难度: 初级.

一个简单的剪贴板管理器.
项目很小, 简单易懂.

但是包结构和代码架构, 命名及代码规范不推荐学习. 并且这个项目已经不再维护了.

Super Clean Master

难度: 高级.

一键清理开源版, 包括内存加速, 缓存清理, 自启管理, 软件管理等.

代码很优雅, 但是项目有一点复杂, 如果你想弄明白所有的事情, 得多花一点时间.

Travel Mate

难度: 中级.

一个旅游导览类应用, 依赖于位置和地图.
代码质量尚未达到标准, 但是对初级和中级开发者来说还是有很多值得学习的地方.

KISS

难度: 中级.

一个简单快速轻量级的launcher应用. 可以从中学习一些比较酷的features.

项目很小很简单.

Turbo Editor

难度: 中级.

一个简单但强大的文字编辑应用. 你也可以使用这个编辑器来写代码, 对不同的语言支持代码高亮.

从这个项目你可以学到如何做一个稳定健壮的文字(或代码)编辑器.

Wally

难度: 初级.

一个简单快速的壁纸应用.
对于初学者来说可以学到很多东西.

这个应用的架构很好, 使得这个应用易于维护和扩展. 这个应用的目的虽然简单, 但是实现目的的方法很好.

Pedometer

难度: 初级.

一个简单轻量级的计步器, 使用硬件传感器来计算步数, 同时考虑到了电量使用问题, 最小化电量消耗.

对于学习计步器实现来说是一个好项目, 但是代码标准和设计架构可能不够好.

公众号

最后, 欢迎关注微信公众号: 圣骑士Wind

20+个很棒的Android开源项目的更多相关文章

  1. Android开源项目分类汇总

    目前包括: Android开源项目第一篇——个性化控件(View)篇   包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView. ...

  2. 59.Android开源项目及库 (转)

    转载 : https://github.com/Tim9Liu9/TimLiu-Android?hmsr=toutiao.io&utm_medium=toutiao.io&utm_so ...

  3. GitHub上史上最全的Android开源项目分类汇总 (转)

    GitHub上史上最全的Android开源项目分类汇总 标签: github android 开源 | 发表时间:2014-11-23 23:00 | 作者:u013149325 分享到: 出处:ht ...

  4. 【Android】Android开源项目分类汇总

    第一部分 个性化控件(View) 主要介绍那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.Pro ...

  5. Android开源项目汇总【转】

    主要介绍那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Gallery.GridView.ImageView.ProgressBar.TextView ...

  6. GitHub上史上最全的Android开源项目分类汇总

    今天在看博客的时候,无意中发现了 @Trinea 在GitHub上的一个项目 Android开源项目分类汇总 ,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参考价值,包括很炫 ...

  7. 那些年不错的Android开源项目

    那些年不错的Android开源项目 转载自 eoe 那些年不错的Android开源项目-个性化控件篇 第一部分 个性化控件(View) 主要介绍那些不错个性化的View,包括ListView.Acti ...

  8. github上有android开源项目

    下面是一些比较好的开源项目,总共分为5大类,也许对某一些人有用,有些项目也许将来某一天对自己也有用,所以整理到此,希望对大家有帮助.首先声明非原创,这篇blog的目的是分享给那些可能需要的人. htt ...

  9. Android 开源项目分类汇总(转)

    Android 开源项目分类汇总(转) ## 第一部分 个性化控件(View)主要介绍那些不错个性化的 View,包括 ListView.ActionBar.Menu.ViewPager.Galler ...

随机推荐

  1. JS排序算法

    1.冒泡排序 冒泡算法是比较相邻的两项,如果前者比后者大,就交换他们. 假设一共有n项,那么一共需要n-1趟,第一趟需要交换n-1次,但是第一趟结束后,最后一项基本确定就是最大项了,所以第二次需要交换 ...

  2. SSIS 数据流的连接和查找转换

    在SSIS的数据流组件中,SSIS引擎使用Merge Join组件和 Lookup组件实现TSQL语句中的inner join 和 outer join 功能,Lookup查找组件的功能更类似TSQL ...

  3. JavaWeb之MVC模式

    一.什么是MVC设计模式? MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Contr ...

  4. Phpcms 详情页显示所属栏目的同级栏目

    Phpcms详情页是不显示所属栏目的同级栏目的,如果按下面的方式 {loop subcat($parentid) $v} <li{if $v[catid]==$catid} class=&quo ...

  5. Maximum Depth of Binary Tree leetcode

    Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...

  6. 1641: [Usaco2007 Nov]Cow Hurdles 奶牛跨栏

    1641: [Usaco2007 Nov]Cow Hurdles 奶牛跨栏 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 424  Solved: 272 ...

  7. 用C写一个web服务器(一) 基础功能

    .container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px } .conta ...

  8. ubuntu 虚拟机vm virtualbox 不能打开 win7

    ubuntu某方面总有些不便,下载个虚拟机装个win7 但是第二次打开的时候就出现了安装是的场景: 原因很简单: 是因为安装了之后没有把win7的镜像文件移除,每次打开时会检测cd/dvd文件/(is ...

  9. 3-15 JS基础知识02

    一.For循环: For (var i = 0;  i <= 10;  i++){ 循环体: } 注意:For循环中的表达式是可以省略的,省略以后是个死循环. odd:奇数   even : 偶 ...

  10. H5 Canvas vs. SVG

    HTML 5 Canvas vs. SVG HTML5 SVG HTML5 地理定位 Canvas 和 SVG 都允许您在浏览器中创建图形,但是它们在根本上是不同的. SVG SVG 是一种使用 XM ...