1.
首先最常见的问题就是Acitivity的生命周期相信朋友们在学校已经背的滚瓜烂熟了,但是有的公司会问service的生命周期,以及启动service的两种方式(startservice和bindservice),以及两者的区别,而且会问你怎么才能让service启动后不被杀死。
2.
第二个常被问到的就是listview了,以及listview的优化,listview的优化一般说的都是使用viewholder减少findviewbyid的使用,其次是异步加载图片,还有就是分页加载,如果你使用过pullltorefresh这个开源的组件可以和面试官谈谈
3.
第三个就是xml的解析了,dom,sax,pull,dom4j,一般这个就是直接让你写出来了,所以大家面试前一定要自己写一遍,其次就是json的解析了,并让你说说xml和json之间的区别,有时间了可以看一下谷歌的gson解析。
4.
线程也是经常遇见的问题,就是handler,looper,messagequeen和message之间的关系
5.
还有就是经常会问到的设计模式,当然最常问到的就是mvc,简单介绍一下mvc
6.
说一下安卓四大组件,这个主要是从四大组件的关系来说明的,就是安卓设计这四大组件也是按照mvc的架构来实现的,具体每个组件的功能和意义讲一下
7.
五大布局也是经常被问到的,但是现在基本上绝对布局都不怎么用了
8.
oom的解决方案,就是内存溢出问题,这个主要就是加载图片的时候会出现,但是安卓的内存一般在16-24M左右,为什么你的图片才一兆多一点,加载的时候却出现了内存溢出呢,原来是因为安卓在加载图片的时候是按照像素来算的,你可以通过查看图片属性来看一下图片的像素,可能是1024*800这些,然后用这个值乘以每个像素占用的内存,这个结果才是你占用内存的大小,所以经常1m以上的图片都会出现这样的结果,那么怎么来避免呢,就是你们学的对图片进行压缩,还有就是对图片进行软引用。
9.
数据库也是经常被问到的问题,会直接给你道题,让你创建一个数据库,然后创建个表,写一些sql语句
10.
最后就是你还是需要看看网上一些比较基础的题目,因为好多公司是先通过笔试才能面试的,笔试的时候好多就是基础的东西了,上面那些是经常在面试的时候遇到的一些问题,可能忘记了一些,我记起来会加上的,作为刚从达内出来的学长,希望能帮到学弟学妹们!
原文地址:http://9652303.blog.51cto.com/9642303/1582977