1.熟练使用AndroidStudio开发工具还有其Debug调试,内存泄漏查找,SVN,GIT代码管理工具
2.熟练使用mvc,mvp,mvvm相关设计框架
3.熟练使用Android组件化,插件化
4.熟练使用kotlin开发
5.熟练掌握第三方框架jetpack,retrofit,rxache,rxjava2,glide,xUtils3.gson.fastJson,Dagger2
6.熟悉c/c++,Flutter开发
7.熟悉使用Android动画,掌握自定义控件的绘制流程,以及触摸事件的分发机制
8.熟悉Android生命周期,界面绘制,后台运行,数据存储等原理
10.熟悉Android网络通信,多线程开发
名称:谁变盒子
项目描述:
该项目是安卓盒子内嵌app显示在健身房大屏上,主要用于健身房器械与用户信息绑定然后进行数据的采集,分析,显示大屏。数据的采集是采用sdk的形式封装在底层,工作原理是:运动器械旁会有一个小型的数据基站,只用于器械的数据广播,如圈数,圈数时间,距离,重量,等等,这些通过单片机蓝牙广播出来然后再通过另外一个固定的数据基站接收各个器械发送过来的广播,然后转成wifi通过udp传输给该项目app,针对udp数据传输解析,sdk业务逻辑封装成3层,第一层过滤层,过滤掉重复包,乱序包。第二层分发层,对过滤后udp数据包进行转发给不同的业务逻辑层(第三层),每一层均采用会话进行管理,会有转态的切换,超时等等。通过sdk的封装接口回调出来的数据,进行各种功能需求的开发,目前有3中模式,第一种用户绑定器械,上大屏数据显示。第二种,用户实景运动,会根据用户运动的速度,动态的切换视频速度进行播放。同时也会显示所有用户的数据。第三种 团课类型,所有用户团课模式中,会有排行榜,数据比拼等等。
整个项目是我进公司了以后进行重构的,整体项目采用了组件化模式+kotlin 然后依赖上诉重构后的sdk,每个模式即为1个子模块,它们都互相解耦,互不影响。各个子模块均采用mvp框架搭建,接口式编程,熟练的使用了Android的几种设计模式(建造者,代理,单例),子模块之间的通信采用了Aouter路由。项目中熟练使用了retrofit+Rxjava2进行数据单个以及嵌套请求。greenDao进行数据得存储。对于模块与模块之间的管理采用自定义注解处理器的方式,对这些模块进行依赖注入。同时也用到了极光推送,glide等一些主流框架,对内存泄漏也进行过排查与解决。
项目职责:个人独立项目重构与开发