1、熟悉 Android 四大组件以及常用控件,具备开发自定义控件的能力,具有良好的编码习惯。
2、Android 中的常用布局、动画特效、 下拉刷新、 擅长应用界面 UI 设计。
3、常见的 Java 设计模式,如: 单例模式、 工厂模式、 观察者模式。
4、掌握 Android 开发中的屏幕适配,以及各SDK版本兼容适配。
5、理解使用 Handler 及 EventBus。
6、主流开源框架,OkHttp、Retrofit等网络通信框架。
7、第三方开源框架图片处理 Glide、Picasso 等。
8、 常见图片的缓存技术,并且能够对图片的优化进行相应的处理。
9、软件统计,App 混淆和应用加固。
10、常见第三方 SDK,如:第三方登录、消息推送、高德地图、第三方分享、第三方支付等。
11、熟练使用 Android Studio、SVN/Git 等 Android 相关开发工具。 12、 熟悉国内各大主流应用市场的上架流程
项目一:叮叮易建
项目描述:本项目是一个建筑装修用工,连接业主和工人的一个在线服务平台
开发工具:Android Studio、 Git、Android测试机项目职责:
1. 参与需求评审,制定 android 端开发计划。
2. 独立负责安卓端的代码编写工作及更新上架
3. 开发过程遇到问题会与后端、产品、UI、测试同事沟通。
4. 新功能以及日常 bug 修复、项目优化。
5. 配合其他部门提供技术支持整体框架:
1. 项目采用 MVP 架构模式;
2. 对公共基类进行抽取,提高复用,精简代码;
3. 网络请求框架采用的是OKHttp+Retrofit,对该框架进行模块化封装,以模块的形式引入到项目中;
4. 项目图片采用Glide加载,对其进行封装成工具类满足各种图片加载场景;
5. 首页集成高德地图SDK实现定位功能,获取经纬度等信息,以便业务功能使用;
6. 充值功能接入微信和支付宝SDK,对对支付成功、取消、失败等状态封装成接口回调;
7. 集成友盟SDK,实现分享、登录、统计功能;
8. 对图片上传到服务器进行压缩处理,避免耗时操作以及减少服务器存储;
9. 商城模块基本实现用户浏览、收藏、商品sku选择、购物、支付、退款、售后等完整功能;
10. 项目采用MMKV实现持久化存储
项目二:爱本地金服
开发工具:Android Studio + Android 手机模拟器 + 各种品牌手机项目职责:
1. 参与业务需求设计讨论,基于 Android 平台进行应用程序开发。
2. 项目初期框架的搭建,和后台方面的协调。
3. 后续代码编写及上线发布。整体框架:
1、项目初期采用 MVC 模式进行编码,后续迭代中对代码进行重构,加入 MVP 模式。
2、网络框架采用 volley,对 volley 进行二次封装,简化代码调用,后面开发中加入了 OKhttp 框架
3、创建基类,例如像 activity,adapter,fragment,创建 BaseActivity、BaseAdapter、BaseFragment
等基类,一些公共的方法都抽取到基类中,其他类去继承基类就行了,这样避免写很多重复代码。
4、整体界面采用 Fragment + ViewPage+TabLayout 搭配,进行滑动切换
5、项目中自定义轮播图,后续对其不断优化
6、集成友盟统计、第三方分享、网易七鱼、极光推送,连连支付等 SDK
7、项目中大量用 WebView 加载 H5 页面,所以创建了一个公共的类,用于显示 H5 页面,大部分跳转H5 页面都统一用这个,跳转的时候通过标识去传递加载 url,这样避免创建很多 WebView 页面,这样也更好管理 Webview,在销毁的生命周期方法对 webview 对象进行销毁,这样避免了内存泄露。
8、对 APP 进行屏幕适配,通过创建不同分辨率的 dimens 文件,在布局中引用
9、项目中除了混淆外,上线之前对 APP 进行 360 加固
10、采用 LeakCanary 对 APP 进行分析是否存在内存泄露
11、大量用到 EventBus 用于通知刷新,页面跳转等
12、项目采用 Glide 框架加载图片
13、项目中集成图标框架 MPAndroidChart
14. ButterKnife 绑定控件
1. 参与需求评审,制定 android 端开发计划。 2. 独立负责安卓端的代码编写工作及更新上架 3. 开发过程遇到问题会与后端、产品、UI、测试同事沟通。 4. 新功能以及日常 bug 修复、项目优化。 配合其他部门提供技术支持
负责主要模块的开发,以及后续版本迭代,bug修复,参与产品需求讨论,代码优化,配合其他部门提供技术支持