应聘 android 工程师的面试题锦集

发表于:2012-01-30来源:未知作者:admin点击数: 标签:
应聘 android 工程师的面试题锦集

  1. Intent的几种有关Activity启动的方式有哪些,你了解每个含义吗?

  这里Android123提示大家,Intent的一些标记有FLAG_ACTIVITY_BROUGHT_TO_FRONT 、FLAG_ACTIVITY_CLEAR_TOP、FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET、FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS、FLAG_ACTIVITY_MULTIPLE_TASK和FLAG_ACTIVITY_NEW_TASK 等。每种含义大家看SDK文档和具体跑下这样你的记忆会更深刻些。

  2. Activity和Task的启动模式有哪些? 每种含义是什么?

  有关在AndroidManifest.xml中的android:launchMode定义,主要有standard、singleTop、singleTask和singleInstance,同时对于android:taskAffinity这些问题大家也要了解,Android开发网在以前的文章中讲过,不过很多开发者仍然不是很清楚,这些基础问题我们以后仍然会再次总结。

  关于Activity的启动模式,参考: http://blog.csdn.net/feng88724/archive/2011/05/11/6412638.aspx

  3. 通过Intent传递一些二进制数据的方法有哪些?

  1). 使用Serializable接口实现序列化,这是Java常用的方法。

  2). 实现Parcelable接口,这里Android的部分类比如Bitmap类就已经实现了,同时Parcelable在Android AIDL中交换数据也很常见的。

  4. 能说下Android应用的入口点吗?

  真正的Android入口点是application的main,你可以看下androidmanifest.xml的包含关系就清楚了。 可以没有Activity但是必须有Application

  5. Android都有哪些XML解析器,都熟练掌握吗?

  这里XmlPull、SAX和DOM相信做过Web开发的都已经滚瓜烂熟了。

  6. SQLite支持事务吗? 添加删除如何提高性能?

  SQLite作为轻量级的数据库,比MySQL还小,但支持SQL语句查询,提高性能可以考虑通过原始经过优化的SQL查询语句方式处理。

  7. Android Service和Binder、AIDL你都熟练吗?

  作为Android重要的后台服务,这些每个Android开发者都应该掌握,这也算是和Java SE最大的不同了,具体的实例大家可以查看Android音乐播放器的源代码Music.git中的,这里不再赘述。

  1. 请描述下Activity的生命周期。

  创建 oncreate - 启动onstart – 恢复 onResume – 暂停 onPause – 结束 onEnd – 销毁onDestroy

  2. 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?

  在”暂停 onPause” 状态将数据保存。

  3. 如何将一个Activity设置成窗口的样式。

  设置Theme。

  4. 如何退出Activity?如何安全退出已调用多个Activity的Application?

  5. 请介绍下Android中常用的五种布局。

  6. 请介绍下Android的数据存储方式。

  7. 请介绍下ContentProvider是如何实现数据共享的。

  8. 如何启用Service,如何停用Service。

  9. 注册广播有几种方式,这些方式有何优缺点?请谈谈Android引入广播机制的用意。

  10. 请解释下在单线程模型中Message、Handler、Message Queue、Looper之间的关系。

  11. AIDL的全称是什么?如何工作?能处理哪些类型的数据?

  12. 请解释下Android程序运行时权限与文件系统权限的区别。(Edited by Sodino)

  13. 系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。

  14. 有一个一维整型数组int[]data保存的是一张宽为width,高为height的图片像素值信息。请写一个算法,将该图片所有的白色不透明(0xffffffff)像素点的透明度调整为50%。

原文转自:http://www.ltesting.net