1、Android 应用开发试题一、选择题(每题 2 分,共 30 分)1. 下列不是手机操作系统的是?(D)A. Android B. Window Mobile C. Apple IPhone IOS D.windows vista2Android 的 VM 虚拟机是哪个? AA.Dalvik B.JVM C.KVM D. framework3. AndroidVM 虚拟机中运行的文件的后缀名为(B)A.class B.apk C.dex D.xml4. 下面关于 Android DVM 的进程和 Liunx 的进程,应用程序的进程说法正确的是ADVM 指 dalivk 的虚拟机.每一个 An
2、droid 应用程序都在自己的进程中运行,不一定拥有一个独立的 Dalvik 虚拟机实例,而每一个 DVM 都是在 Liunx 中的一个进程,所以说可以认为是同一个概念。BBDVM 指 dalivk 的虚拟机 .每一个 Android 应用程序都在自己的进程中运行,不一定拥有一个独立的 Dalvik 虚拟机实例,而每一个 DVM 不一定都是在 Liunx中的一个进程,所以说可以认为不是一个概念。C DVM 指 dalivk 的虚拟机 .每一个 Android 应用程序都在自己的进程中运行,都拥有一个独立的 Dalvik 虚拟机实例,而每一个 DVM 不一定都是在 Liunx 中的一个进程,所以
3、说可以认为不是同一个概念。DDVM 指 dalivk 的虚拟机.每一个 Android 应用程序都在自己的进程中运行,都拥有一个独立的 Dalvik 虚拟机实例,而每一个 DVM 都是在 Liunx 中的一个进程,所以说可以认为是同一个概念。5. 下列哪个可做 EditText 编辑框的提示信息?(D)A. android:inputType B. android:textC. android:digits D. android:hint6. 在 AndroidManifes.xml 中描述一个 Activity 时,该 Activity 的 label 属性是指定什么( B)A指定 Acti
4、vity 的图标B指定 Activity 的显示图标C指定 Activity 和类相关联的类名D指定该 Activity 的唯一标识7. 关于 ContentValues 类说法正确的是( A )A它和 Hashtable 比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是 String 类型,而值都是基本类型。B它和 Hashtable 比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是任意类型,而值都是基本类型。C它和 Hashtable 比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名可以使空,而值都是 String 类型。D它和 Hashtable
5、比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是 String 类型,而值也是 String 类型。8. Activity 对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行( A)AonPause() BonCreate()ConResume() DonStart9. 下列哪个不是 Activity 的生命周期方法之一?(B)A. onCreate B. startActivityC. onStart D. onResume10.如果在 android 应用程序中需要发送短信,那么需要在 AndroidManifest.xml 文件中增加什么样的权限( D).A
6、.发送短信,无需配置权限B.permission.SMSC.android.permission.RECEIVE_SMSD.android.permission.SEND_SMS11. 下面说法错误的是(C)AAndroid 采用单线程模型BAndroid 会默认会为线程创建一个关联的消息队列CHandler 会与多个线程以及该线程的消息队列对应D程序组件首先通过 Handler 把消息传送给 Looper,Looper 把消息放入队列12. 关于广播以下陈述正确的是( D).A.广播接收器只能在配置文件中注册B.广播接收器注册后不能注销C.广播接收器只能接收自定义的广播消息D.广播接收器可以
7、在 Activity 中单独注册与注销13. 关于应用程序的生命周期,一个 Activity 从启动到运行状态需要执行 3 个方法,请选择一个正确的执行顺序。AA. onCreate()-onStart()-onResume()B. onStart()-onCreate()-onResume()C. onCreate()-onResume()-onStart()D. onStart()-onResume()-onCreate()14. 对 Android 项目工程里的文件,下面哪个描述是错误的?DA. res 目录:该目录存放程序中需要使用的资源文件,在打包过程中android 的工具会对这些
8、文件做对应的处理B. R.java 文件是自动生成而不需要开发者维护的。在 res 文件夹中内容发生任何变化,R.java 文件都会同步更新C. Assets 目录:在该目录下存放的文件,在打包过程中将会经过编译后打包在 APK 中D. AndroidManifest.xml 是程序的配置文件,程序中用到的所有Activity、Service 、BroadcastReceiver 、Intent 和 Content Provider 都必须在这里进行声明15. 下列属于 SAX 解析 xml 文件的优点的是( B)A将整个文档树载入在内存中,便于操作,支持删除,修改,重新排列等多种功能。B不用
9、事先调入整个文档,占用资源小C整个文档调用内存,浪费时间和空间D不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据将会消失二、填空题(共 11 题,每空 1 分,共 20 分)1Android 四大组件是_, , 和 。2. 定义 LinearLayout 水平方向布局时至少设置的三个属性: ,和 。3. 为了使 android 适应不同分辨率机型,布局时字体单位应用 ,像素单位应用 和 。4. 通过 Intent 打开浏览器显示百度首页的方法为 。5. 启动 Service 的两种方法分别是 和 。6. Android 应用程序在进行读取 SD 卡时需要设置的权限为 。7.C
10、ontent 创建或打开 SQL 数据库的方法 。8. 当启动一个 Activity 并且新的 Activity 执行完后需要返回启动它的 Activity 来执行的回调函数式( )9. layout 布局文件的命名不能出现字母( )10.使用命令安装 apk 的程序的命令_ _11.Android 的消息机制的实现需要哪些来实现 :_,_,_三、简答题(共 30 分,共 7 题, )1. 请描述下 Activity 的生命周期以及何时调用相应的生命周期的方法(5 分)2. 简 要 说明 android 中 sdk 和 adt 作用。 (4 分)3. ANR 是什么、?哪些情况下回发生?开发时
11、如何避免 ANR?(4 分)4. Android 工程下面有个 gen 目录,该目录下有个 R.java 文件,该文件的作用是什么?能不能进行修改?(4 分)5. Handler 的运行机制(运行原理)(Handler,Looper,MessageQueue,Message 之间的关系)?6. Android 中 Dalvik 虚拟机与 JVM 虚拟机有什么不同,各有什么优缺点?(4 分)7.浅谈 Android 四大组件是什么,各自有什么作用? (5 分)四、编程题(20 分,共 3 题)1.写出按钮点击和非点击状态图片切换的 btn_login.xml 文件代码和按钮的配置代码(5 分)2页面上现有 ProgressBar 控件,请用书写线程以 10 秒的时间完成其进度显示工作(5 分)3. 请继承 SQLiteOpenHelper 实现:(10 分)a:创建一个版本为 1 的”diaryOpenHepler.db3”的数据库b:同时创建一个 diary 表(包含一个_id 主键自增长,topic 字符型 100 长度,content 字符型 1000 长度)c:在数据库版本变化时请删除 diary 表,并重新创建出 diary 表