第一个开源的Android项目
一直都想在工作之余做一个开源的项目,哪怕是练手学习之用。
最近在找工作,面试官说我缺少Android项目,刚好借此机会,做了一个IM即时通讯的项目。
github链接地址:https://github.com/gong-shuang/andriod-open
项目介绍
这个是仿微信实现的,先看一下视频:
https://www.ixigua.com/i6730983740425634308/
(由于csdn不能上传视频,所有将视频放在西瓜视频里)
这个项目主要参考了两个项目,分别介绍:
(1)手把手开发一个完整即时通讯App
这个项目使用的MVP结构,非第三方即使通讯,即使通讯的功能是自己实现的,但采用了推送功能,在推送的基础上实现的即使通讯,主要的技术有:网络框架:Retrofit,注解框架:Butterknife,图片框架:Glide,安卓数据库框架:Dbflow,数据存储平台:阿里云OSS。
特点:使用的MVP框架,层次太多,虽然减少了代码聊,但增加了难度,对处学者来说不容易理解,
我们的项目主要使用了这个项目中与服务器通讯的功能。
(2)本项目仿最新版微信6.5.7
这个项目是高仿微信项目,仿微信版本6.5.7(除图片选择器外)。本项目基于融云SDK,使用了 Rxjava+Retrofit+MVP+Glide 技术开发。
特点:这个项目已经停止维护了,初始化融云的SDK不成功,连接不上,而部分功能不能适配华为手机。
我们的项目主要使用了这个项目的UI功能。
后续开发
边找工作,边继续完善这个项目。第一阶段是完善其他基本功能,修改bug等。
由于当前是将两个项目合在一起,结构比较混乱,后期会重新梳理一下结构,重新构建这个代码的结构。
既然是学习,后续会依次实现如下功能: 语言聊天,视频聊天,朋友圈等。
版本号说明
版本号采用“x.x.x”格式。分别为“主版本号.次版本号.bug修复”。分别说明:
(1)主版本号:主要的架构改变,需要修改大量代码,例如将MVP改为MVVM,对应的版本号会加1。
(2)次版本号:实现了新的功能,例如实现了升级功能,对应的版本号会加1。
(3)bug修复:每修改一个bug,对应的版本号会加1。
个人简历
本人12年毕业,做了几年的通信行业的嵌入式软件开发,15年来北京,16年考研(现北邮非全研究生),17年转行做Android开发,是在创业公司里,做的事情比较杂乱,Android开发没有经历过百万日活的磨练,深感Android技术欠缺,做这个项目也是为了多练习一下。
更多相关文章
- eclipse 创建android项目 无法启动
- Android(安卓)Gradle Plugin指南(二)——基本项目
- Android(安卓)7.0、8.1 导航栏上添加图标 及 相应功能
- 自己编译 tess-two几个库文件用于android OCR开发并合入你的工程
- Android上传开源项目(Library)到Jcenter
- AS-->Android(安卓)Studio直接打开/导入/编译Eclipse项目
- 如何用Android(安卓)studio构建项目
- Android(安卓)Studio 在默认build.gradle 中加入自定义源(新建项
- 一个用于导出android项目配置宏为单个独立xml文件的shell脚本