android面试技巧分享
1. Intent的几种有关Activity启动的方式有哪些,你了解每个含义吗?
FLAG_ACTIVITY_SINGLE_TOP如果目标Activity已经运行在栈顶,将不会再启动
= singleTop
FLAG_ACTIVITY_BROUGHT_TO_FRONT 、=singleTask
FLAG_ACTIVITY_MULTIPLE_TASK=singleInstance
FLAG_ACTIVITY_CLEAR_TOP、如果被启动的activity已经运行在当前 task,将不会再创建新的活动实例,位于其上的其它activity将会被关闭。
2. Activity和Task的启动模式有哪些? 每种含义是什么?
3. 通过Intent传递一些二进制数据的方法有哪些?
1). 使用Serializable接口实现序列化,这是Java常用的方法。
2). 实现Parcelable接口,这里Android的部分类比如Bitmap类就已经实现了,同
时Parcelable在Android AIDL中交换数据也很常见的。
4. 能说下Android应用的入口点吗?
真正的Android入口点是application的main,你可以看下androidmanifest.xml的包含关系就清楚了。
5. Android都有哪些XML解析器,都熟练掌握吗?
这里SAX和DOM、XmlPull相信做过Web开发的都已经滚瓜烂熟了。
6. SQLite支持事务吗? 添加删除如何提高性能?
SQLite作为轻量级的数据库,比MySQL还小,但支持SQL语句查询,提高性能可以考虑通过优化的SQL查询语句方式处理。SQLITE默认就是打开事务的。
7. Android Service和Binder、AIDL你都熟练吗?
Binder是系统进程间通信(IPC)方式之一。Binder使用Client-Server通信方式:一个进程作为Server提供诸如视频/音频解码,视频捕获,地址本查询,网络连接等服务;多个进程作为Client向Server发起服务请求,获得所需要的服务。要想实现Client-Server通信据必须实现以下两点:一是server 必须有确定的访问接入点或者说地址来接受Client的请求,并且Client可以通过某种途径获知Server的地址;二是制定Command- Reply协议来传输数据。例如在网络通信中Server的访问接入点就是Server主机的IP地址+端口号,传输协议为TCP协议。对Binder而言,Binder可以看成Server提供的实现某个特定服务的访问接入点, Client通过这个‘地址’向Server发送请求来使用该服务;对Client而言,Binder可以看成是通向Server的管道入口,要想和某个 Server通信首先必须建立这个管道并获得管道入口。Binder框架定义了四个角色:Server,Client,ServiceManager(以后简称SMgr)以及驱动。其中 Server,Client,SMgr运行于用户空间,驱动运行于内核空间。由于Android的Java层级只是一个外壳框架而已,大部分的系统组件(Android本身)都是在Nataive层(又称C/C++层)执行。这是Android的整体架构,所以我们的应用程序也必须考虑分为两层的必要性,才能完全的融入Android的整体架构里。我们看到的Android应用架构(Application Framework)其实只是Android整体架构里的.外壳结构而已。Android应用框架就如同椅子的椅面,那么椅子的椅腿在哪里呢?Binder系统是在Native层的C/C++组件。Java应用程序(如Activity体系等)是透过JNI界面去呼叫Binder系统(或称为组件)。
AIDL:在Android中, 每个应用程序都可以有自己的进程. 在写UI应用的时候, 经常要用到Service. 在不同的进程中, 怎样传递对象呢? 显然, Java中不允许跨进程内存共享. 因此传递对象, 只能把对象拆分成操作系统能理解的简单形式, 以达到跨界对象访问的目的. 在J2EE中,采用RMI的方式, 可以通过序列化传递对象. 在Android中, 则采用AIDL的方式. 理论上AIDL可以传递Bundle,实际上做起来却比较麻烦.
AIDL(AndRoid接口描述语言)是一种借口描述语言; 编译器可以通过aidl文件生成一段代码,通过预先定义的接口达到两个进程内部通信进程的目的. 如果需要在一个Activity中, 访问另一个Service中的某个对象, 需要先将对象转化成AIDL可识别的参数(可能是多个参数), 然后使用AIDL来传递这些参数, 在消息的接收端, 使用这些参数组装成自己需要的对象. AIDL的IPC的机制和COM或CORBA类似, 是基于接口的,但它是轻量级的。它使用代理类在客户端和实现层间传递值. 如果要使用AIDL, 需要完成2件事情: 1. 引入AIDL的相关类.; 2. 调用aidl产生的class.
8. 你用过哪款Android手机,有哪些优点和不足,相对于iPhone或Symbian又有哪些优缺点?
-
国企面试技巧必知
眼下正值求职高峰,国企仍然是众多应届生毕业生的首选。因为国有企业是个铁饭碗,所以很多人削尖了脑袋要往里钻,因此进国企的竞争其实是非常激烈。那就让本站来根据其特点来介绍几个国企面试自我介绍的技巧。Part1.国企面试的特点1.国有企业面试相当直接,许多问题都...
-
09公务员面试技巧
公务员面试通常以应试者的自我介绍开始。当面试考官随便地间你:谈谈你自己的情况如何?这是面试中的第一个问题。此刻,你应把在此之前所有紧张不安的情绪稳定下来。因为这个问题,应试者已经做了充分的准备,并且有足够的信心和勇气相信自己能回答好这个问题。(1)自我介...
-
2006外企面试指南面试技巧
一、回避硬伤的三项注意事项当面试进入一定阶段,有的企业根据需要,可能会加上英文面试,能到这个阶段,也预示着你正向梦想的职位最后冲刺,这轮面试的分量可想而知,所以你应该确保在面试中发挥最佳状态。毕业生求职攻克交流障碍,帮助自己回避硬伤的注意事项如下:1.回答语...
-
面试没有技巧只有经验教训
“未来职场之星”PK活动目前正在如火如荼地投票海选,大学生把自己的实习经验“晾”在自己的博客中。而一些已成功蜕变为职场精英的“前辈”也加入了讨论,为学弟学妹传授求职经验。面试要保持平和心态浙江大学计算机学院2004级硕士何莺今年七月毕业,现在已经作为一...