1.有良好的Java语言基础,良好的编程风格,熟悉面向对象编程思想。
2.熟练使用属性动画,补间动画,帧动画,能根据具体情况,灵活运用。
3.能够有效避免APP运行过程中遇到的内存泄漏和内存溢出问题。
4.熟练掌握线程之间通过Handler传递消息的机制原理,Message,Looper,MessageQueue,Handler之间的关系,能够利用接口回调,广播,观察者模式等对数据的改变做出即时处理。
5.熟练掌握自定义控件,自定义组合控件中View所经过的测量,布局,绘制的流程,以及Touch事件分发机制,可以灵活应用事件分发机制实现不可滑动的ViewPager,ViewPager相互之间以及与ListView之间嵌套时的事件拦截,以及侧滑菜单的处理。
6.熟悉Android手机屏幕适配及屏幕适配的原则,提高应用的兼容性(解决不同尺寸手机显示图片大小问题)
7.了解JNI开发流程NDK工具的使用,Java与本地C动态库之间的相互调用。
8.熟悉Android的数据存储方式(File,SharedPrefrence,Sqlite,ContentProvider,Net),JSON数据格式的解析(节点解析,Bean解析,泛型解析),远程服务的调用,
9.掌握APP应用开发框架结构的基本搭建,抽取activity,fragment,adapter,holder等公用代码,能够将常见的单例模式,代理模式,抽象工厂模式,观察者模式等设计模式灵活应用在APP开发中。
10.熟悉使用sharesdk实现一键分享、三方登录功能
项目经验:
1.项目名称:抄表通
2.开发周期:4个月
3.开发工具:Eclipse + Android Studio
4.项目描述:抄表通是一款帮助抄表人员能更快、更便捷的进行每月例行抄表任务的软件。
5.职责:软件的需求分析,模型建立,数据库设计,框架搭建,业务代码实现,界面的设计与实现,都是本人独立完成。
6.技术要点:
a.视图层采用Radiogroup + Fragment的框架来设计
b.建立一个拥有四种视图的抽象类LoadingPager,分别提供了加载中、加载失败、空视图。根据返回状态判断该显示哪个视图的逻辑处理。
c.建立一个BaseFragment,继承Fragment类,调用loadingpager类的实现方法提供刷新视图,加载数据等抽象方法供子类实现根据返回值进行相对应的页面显示。
d.自定义的下拉上拉刷新ListView控件。
e.代理设计模式,采用ThreadPoolProxyFactory工厂创建ThreadPoolProxy线程池代理,利用线程池实现异步任务加载数据。
f.Touch事件的分发处理,在子元素中重写dispatchTouchEvent()方法,通知父元素不要拦截触摸事件( getParent().requestDisallowInterceptTouchEvent(true) )
g.抽取网络请求基类完成协议的三级缓存逻辑,将内容缓存本地,用户可以离线查看缓存内容