编码:
☆能够独立开发,并有很强的团队协作能力
☆良好的开发习惯,一心追求精简高效的代码,对代码有洁癖
☆扎实的Java基础,有着良好的面向对象设计的思想,熟练使用集合、IO流及多线程等
☆每一次的编码都会考虑到其项目框架的后期维护,代码的冗余,及设计模式的运用
UI实现:
☆熟练使用安卓常用布局、组件和资源,掌握常见UI的实现
☆熟练掌握自定义View的流程,及触摸事件的原理,并可以实现常见的自定义View
☆熟练使用Android下动画、选择器、图形资源等以实现Android中的动画特效。
☆个人使用过(部分),觉得比较优秀UI库:PullToRefresh、PinnedHeaderListView、PhotoView、CustomShapeImageView并简单了解其实现原理
逻辑业务:
☆能灵活运用常见的开发设计模式(单例、工厂、观察者)进行开发
☆熟悉MVP开发模式,并可以使用其进行开发,将代码模块化
☆对Activiy的生命周期和启动模式有深入的理解。
☆对Android中的IPC机制有深入理解
☆熟练使用多种方式进行数据存储
☆熟悉Android下的Handler消息机制,以及ListView的优化,和ViewHolder的封装
☆熟练使用Volley进行网络请求,并了解其底层原理,并了解当前最流行的网络请求的第三方类库: Retrofit、Ion等的简单使用及其原理
☆熟练使用当前最流行的图片加载类库:UniversalImageLoader、Glide、Picasso、Fresco,并了解其原理
☆掌握第三方支付流程和使用:支付宝、微信支付等
☆熟练使用Android的应用分享(ShareSDK)、消息推送(友盟)、百度地图、即时推送(极光推送)等第三方SDK
☆掌握OOM的异常处理,对Android中的内存优化和泄漏有一定的理解
☆熟悉Android下的数字摘要、加密以及解密操作。
☆了解APK瘦身和多渠道打包技术,以及增量更新热修复等。
开发工具:
☆熟悉使用AndroidStudio进行开发
☆熟悉使用Git版本控制工具
☆熟练使用Eclipse进行开发
☆熟练使用SVN版本控制工具
☆熟练使用Jenkins进行自动打包
☆熟练使用MemoryAnalyzer/Leak
Pilot HUD 2016.8-2018.7
项目描述
是一款车载HUD抬头显示系统,项目使用的是android5.1系统,主要分为导航、音乐、行车记录仪、ADAS、蓝牙电话、FM调频几大模块。
开发环境:AS+git
技术要点:
①:每个模块都是应用级app,通过主程序Launcher 启动。
②:使用单例,装饰,工厂等设计模式封装项目所需的工具类,并把工具类封装为类库,以sdk的形式去调用。
③:使用intent、contentprovider、AIDL、BroadcastReceiver进行应用间数据共享和交互。
④:通过jni调用c代码从串口中获取OBD中的数据。
⑤:接入高德导航、百度地图、同行者语音第三方sdk实现项目的地图导航和智能语音功能。
⑥:在framework层修改代码,以隐藏系统通知栏。
⑦:使用volley进行网络请求,并对volley进行了二次封装XXXRequest。
⑧:使用UncaughtExceptionhandler捕获全局异常,并使用数据流将异常记录下来,以便调试和查询bug。
⑨:在Linux系统中编译版本差分包,并将其发布在fota服务器上。
问药APP 编辑
项目描述
一款线上购药平台,它可以进行病、症、药查询,最大的亮点是推出的消费者与药店之间的实时互动,帮助终端人员更加专业的提供药事服务,并自然而然的形成O2O交易。
开发环境:Eclipse + Svn
功能模块:健康咨询、圈子、发现、个人中心
技术要点:
①:使用Picasso进行图片的异步加载,解决了经常遇到的OOM问题
②:使用模板设计模式,抽取子类,减少了重复代码
③:使用单例设计模式对网络框架进行了二次封装
④:在登录模块使用了观察者模式
⑤:使用实时登录的短信验证,实现注册登录工能
⑥:使用即时通信环信,完成药店与用户间的沟通
⑦:对不同的数据进行了不同的缓存
⑧:接入腾讯和微博接口SDK,实现腾讯账号或微博账号登录。
⑨:使用友盟完成了朋友圈、微信好友、新浪、以及qq空间的分享功能