开发者社区> 程序员小鱼> 正文

快速开发android,离不开这10个优秀的开源项目

简介: 作为一名菜鸡Android,时常瞻仰大佬们的开源项目是非常必要的。这里我为大家收集整理了10个优秀的开源项目,方便我们日常开发中学习!
+关注继续查看

作为一名菜鸡Android,时常瞻仰大佬们的开源项目是非常必要的。这里我为大家收集整理了10个优秀的开源项目,方便我们日常开发中学习!

作者:ListenToCode
博客:https://www.jianshu.com/p/9742ce36b6a8

KnowWeather

GitHub地址
https://github.com/SilenceDut/KnowWeather

一款 Android 开源天气 App ,包含天气信息、详情、生活指数等,通知栏,桌面小部件,定时更新天气等等,应用没有任何广告,支持县级、区级城市的天气,原文:https://www.diycode.cc/projects/SilenceDut/KnowWeather

image

  • 整体框架

    根据实际项目浅谈Android项目中的框架搭建
    
    (https://silencedut.github.io/2016/12/05/根据实际项目浅谈Android项目中的框架搭建/)
    
  • 关于

    知天气——天气尽在掌握之中
    
    (https://silencedut.github.io/2016/12/06/知天气——天气尽在掌握之中/)
    
  • 特点

    支持县级、区级天气
    JobScheduler与JobService的使用
    轮询系统定时更新天气
    实现很多定制化很大的,对后台任务严苛的系统中(如魅族系统)通知栏常驻,并且轮询系统正常运行,很多下载量千万级的天气应用无法达到此效果
    无广告和强制保活拉活的行为
    

FolioReader-Android

GitHub地址
https://github.com/FolioReader/FolioReader-Android

一个 Android 开源电子书(ePub)阅读 App ,

原文:

https://www.diycode.cc/projects/FolioReader/FolioReader-Android

效果图

image

Gradle

Add following dependency to your app build.gradle

compile 'com.folioreader:folioreader:0.2.3'

NBAPlus

GitHub地址
https://github.com/SilenceDut/NBAPlus

一个 Android 开源 NBA 资讯和赛事信息的平台 App

效果图

image

image

特点

  • 遵循Android开发最佳实践的一种具体实践
  • Retrofit2.0+RxJava+EventBus+GreenDao的使用
  • 代码结构清晰,扩展性强,易复用到其他项目
  • 结合NBAPlus Server 学习后台开发知识和接口的设计
  • 动态Blur效果。

关于

NBA资讯和赛事信息的平台。 全面、方便、快捷的获取新闻动态、比赛数据。 无广告、推送信息,不后台常驻,空间占用小。web后台部分在这:

NBAPlus Server

https://github.com/SilenceDut/nbaplus-server

MyDiary

GitHub地址
https://github.com/DaxiaK/MyDiary

动漫《你的名字》同款 Android 开源 App,原文:

https://www.diycode.cc/projects/erttyy8821/MyDiary

效果图

image

image

简诗

GitHub地址
https://github.com/wingjay/jianshi

一款优雅的中国风记录 app,包括 Android 端和 Server 端,原文:https://www.diycode.cc/projects/wingjay/jianshi

image

image

相关博客

如何在一天之内完成一款具备cool属性的Android产品_简书

https://www.jianshu.com/p/cf496fc408b2

banya

GitHub地址
https://github.com/forezp/banya

一个基于豆瓣 API 仿网易云音乐的开源项目。原文:https://www.diycode.cc/projects/forezp/banya

项目介绍:

  • 整体采用material design 风格,本人是网易云音乐的粉丝,所以界面模仿了网页云音乐,另外,项目中尽量使用了5.0之后的新控件。
  • 项目整体采用mvp+rxjava+retrofit 框架,使用glide进行图片展示,用butterknif注解,另外使用了java 8 新特性,拉姆达表达式,安卓原生并不支持,需要导插件,具体见项目。
  • 并对retrofit的okhttpClient进行了缓存配置,很遗憾,豆瓣API在服务端并没有对返回数据进行Cache-Control 设置。
  • 后续会采用本地数据库对数据进行缓存,初步定为使用realm。
  • 项目地址:https://github.com/forezp/banya
  • 主界面采用material design 设计风格,使用了NavigationView和DrawerLayout的抽屉效果,CoordinatorLayout和viewpager 配合,使用behavior属性,对toolbar的显示和隐藏进行了控制。使用了tablayout和viewpager配合,切换fragment,整体风格类似于网易云音乐。
  • 用到的豆瓣API有热映榜、top250、搜索图书、搜索音乐,等。

image

image

image

yasea

GitHub地址
https://github.com/begeekmyfriend/yasea

带美颜滤镜的 Android 直播推流开源客户端项目,通过手机摄像头和麦克风采样,编码为H.264和AAC,再封装FLV格式,推送至RTMP服务器。延迟达到毫秒级别。

image

Coding-Android

GitHub地址
https://github.com/Coding/Coding-Android

编译环境 Android Studio 2.2.3,用gradle引用的许多第三方库,第一次加载会有点慢,加载完毕后要build一下,这些待下划线的类(比如 MainActivity_)会在build之后自动生成。

包说明

  • common 基类和工具类
  • comment 评论区
  • enter 输入框
  • network 对网络做了一点封装
  • photopick 图片多选控件
  • umeng 封装了umeng
  • hide 进入staging界面
  • maopao 冒泡界面
  • message 消息界面
  • model 一些数据结构
  • project 我的项目界面
  • setting 设置界面
  • task 我的任务界面
  • third 一些第三方代码
  • user 好友界面

Sprayscape

GitHub地址
https://github.com/googlecreativelab/Sprayscape

原文https://www.diycode.cc/projects/googlecreativelab/Sprayscape
Sprayscape内置于Unity,支持原生Android。使用适用于Unity的Google VR SDK处理陀螺仪数据和使用NatCam Unity插件进行精确的相机控制,Sprayscape将相机输入映射到360度球体上。
GPU使一切成为可能。在用户点击或触摸时,相机进给以每秒60帧的纹理渲染。然后,通过GPU上的片段着色器将该纹理与任何现有纹理合成。同样的着色器还处理从2D相机到360球体的投影,创建您在app中看到的景观。
当用户保存景观时,平面全景图像存储在应用数据中并写入包含所有景观的单个图集文件。地图集被加载到景观中,带有陀螺仪导航的景观画廊。
共享由原生Android代码处理。当用户通过链接共享景观时,用户将使用Google OAuth登录并提示您在云端硬盘上进行读写访问。所有用户生成的内容都存储在用户的云端硬盘帐户中,因此用户可以随时删除其内容。有了适当的权限,Drive API v3会检查Sprayscape文件夹,如果缺少,则创建一个,然后上传文件。共享URL在“本机共享”对话框中呈现给用户,并且还附加到应用程序上的scape对象,以便日后轻松共享。
Facebook的份额也是本地处理的。全景图被准备为具有适当EXIF数据的图像对象,以确保在Facebook上正确呈现,然后通过原生共享呈现给用户。用户选择Facebook分享到他们的网络。

ListenerrMusicPlayer

GitHub地址
https://github.com/hefuyicoder/ListenerMusicPlayer

一款优雅的遵循 Material Design 的开源音乐播放器,UI参考 腾讯轻听 音乐播放器,使用 Lastfm Api 与 酷狗歌词Api。项目架构采用 mvp-clean,基于 Retrofit2 + Dagger2 + Rxjava + RxBus + Glide。

项目特点

  • 遵循 Material Design 规范,界面清新,交互优雅。
  • 基于 MVP-CLEAN + Retrofit2 + Dagger2 + Rxjava + Glide
  • 功能模块: 我的歌曲、我的歌单、文件夹、我喜欢、最近播放、最近添加、播放排行、本地搜索等。
  • 支持显示歌词及缓存
  • 支持耳机线控播放,耳机拔出自动暂停
  • 动态刷新媒体库,及时获知媒体文件变更
  • 日夜间模式切换,支持动态换肤

阅读更多

面试官:请你介绍一下你的项目经验

Google费尽心力推出了一个新的项目架构

Android 应用防止被二次打包指南

NDK项目实战—高仿360手机助手之卸载监听

(Android)面试题级答案(精选版)

相信自己,没有做不到的,只有想不到的

在这里获得的不仅仅是技术!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Sonic 开源移动端云真机测试平台 - 设备中心接入安卓设备实例演示,Agent端服务部署过程详解(下)
Sonic 开源移动端云真机测试平台 - 设备中心接入安卓设备实例演示,Agent端服务部署过程详解
26 0
Sonic 开源移动端云真机测试平台 - 设备中心接入安卓设备实例演示,Agent端服务部署过程详解(上)
Sonic 开源移动端云真机测试平台 - 设备中心接入安卓设备实例演示,Agent端服务部署过程详解
26 0
Android开源系列-组件化框架Arouter-(三)APT技术详解
最近组里需要进行**组件化框架**的改造,用到了**ARouter**这个开源框架,为了更好的对项目进行改造,笔者花了一些时间去了解了下ARouter
122 0
Android开源系列-组件化框架Arouter-(二)深度原理解析
最近组里需要进行**组件化框架**的改造,用到了**ARouter**这个开源框架,为了更好的对项目进行改造,笔者花了一些时间去了解了下ARouter
209 0
Android开源系列-组件化框架Arouter-(一)使用方式详解
最近组里需要进行**组件化框架**的改造,用到了`Arouter`这个开源框架,为了更好的对项目进行改造,笔者花了一些时间去了解了下`Arouter
499 0
安卓IPCamera-ONVIF JAVA代码开源啦
安卓IPCamera-ONVIF JAVA代码开源啦
55 0
小米开源 Android 项目欲“阻止提取 APK 文件”,被谷歌以“软件有缺陷”为由驳回
小米开源 Android 项目欲“阻止提取 APK 文件”,被谷歌以“软件有缺陷”为由驳回
68 0
【BLE MIDI】推荐一个 Android 平台开源 MIDI 软件 MidiSheetMusic ( 相关资料 | Android Studio 中导入 Eclipse 源码 )(二)
【BLE MIDI】推荐一个 Android 平台开源 MIDI 软件 MidiSheetMusic ( 相关资料 | Android Studio 中导入 Eclipse 源码 )(二)
104 0
【BLE MIDI】推荐一个 Android 平台开源 MIDI 软件 MidiSheetMusic ( 相关资料 | Android Studio 中导入 Eclipse 源码 )(一)
【BLE MIDI】推荐一个 Android 平台开源 MIDI 软件 MidiSheetMusic ( 相关资料 | Android Studio 中导入 Eclipse 源码 )(一)
184 0
Android开发常用开源框架
Android开发常用开源框架
477 0
+关注
程序员小鱼
6年Android开发大神,决心做更有成就感的事情,于是有这个公众号【终端研发部】,谈的是产品,谈的是技术,更谈的是人生,一条执着于技术+职场经验之路,从人工智能Python, Android、NDK,等FFmpeg音视频解码 ,致力于做东半球最优秀的程序员!
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
蚂蚁聚宝Android秒级编译——Freeline
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关镜像