试题一、选择题1android虚拟设备的缩写是(AVD)2AndroidSDK目前支持的操作系统(Linux)3Android开发工具插件(ADT)没有提供的开发功能(自动更新)4AndroidSDK提供一些开发工具可以把应用软件打包成Android格式文件(APK)5Android当中基本的所有的UI都是由(view)或者其子类实现的7下列不是Activity的生命周期方法之一的是()onCreateonStartonRestartonResumeonPauseonStoponDestroy8以下可以做EditText编辑框的提示信息是(adroid:hint)以下不是手机操作系统的是(windowsvista)下列哪个属性是专用于相对布局的(D)A.android.orientation线性vertical垂直horizontalB.android:stretchColumnsC.android:layout_alignParentRightD.android:layout_toRightOf定义LinearLayout垂直方向布局时设置的属性(D)A.android:layout_heightB.android:gravityC.android:layoutD.android:orientationvertical垂直为了使android适应不同分辨率的机型,布局时字体单位应用(D)A.dpB.dip像素C.pxD.sp下面属于android的动画分类的有(AB)A.TweenB.FrameC.DrawD.AnimationPropertyAnimation属性动画android关于service生命周期的onCreate()和onStart()说法正确的是(AD)A.当第一次启动的时候先后调用onCreate()和onStart()方法B.当第一次启动的时候只会调用onCreate()方法C.如果service已经启动,将先后调用onCreate()和onStart()方法D.如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法在android中使用Menu时可能需要重写的方法有(AC)A、onCreateOptionsMenu()三种菜单:选项菜单、上下文菜单、子菜单B、onCreateMenu()C、onOptionsItemSelected()D、onItemSelected()Intent传递数据时,下列的数据类型哪些可以被传递(ABCD)A、SerializableB、charsequenceC、ParcelableD、Bundlejava.io包中的(A)和(B)类主要用于对对象Object的读写。A.objectInputStreamB.objectOutPutStreamC.ReaderD.writer继承ContentProvider需要实现(ABCD)等方法。A.insertB.deleteC.updateD.query自定义Adapter需要重写哪些方法?(ABCD)A.getCountB.getItemC.getItemIdD.getView在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(AB)A、getWriteableDatabase()B、getReadableDatabase()C、getDatabase()D、getAbleDatabase()二、填空题1Android平台由操作系统,中间件,用户界面和应用软件组成。2Android平台提供了2D,3D的图形支持,数据库支持SQLite3目前已知的可以用来搭建Android开发环境的系统有windows,Linux,Mac等5AndroidSDK主要以java语言为基础6创建工程时需要填写的信息名称有工程名,包的名字,Activity的名字还有应用的名字7Android.jar是一个标准的压缩包,其内容包含的是编译后的class,包含了全部的API三、简答题1.Android软件框架结构自上而下可分为哪些层?应用程序(Application)、应用程序框架(ApplicationFramework)、各种库(Libraries)和Android运行环境(RunTime)、操作系统层(OS)应用程序是用Java语言编写的运行在虚拟机上的程序,如E-mail客户端、日历、地图等;应用程序架构是编写Google发布的核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用,这样便简化了程序开发的架构设计,但是必须遵守其框架的开发原则。如ActivityManager、WindowManager、ViewSystem等。10.简述Android应用程序结构是哪些(1)一组View(UI组件)。这些组件包括列表(List)、文本框(textbox)、按钮(button)等。通过这些UI组件可以构建应用程序的视图部分。(2)ContentProviders。它提供了一种机制,通过这种机制,应用程序可以实现数据的互访和共享。(3)ResourceManager。它负责管理非代码的访问。即资源文件的访问管理。(4)NotificationManager。它能让程序将自己的警示信息显示在状态栏上。例如:当有短信时,可以在状态栏上显示出新短信的信息。(5)ActivityManager。它管理着应用的生命周期,并且提供了应用页面退出的机制。在Android应用中,每个应用一般由多个页面组成,而每个页面的单位就是Activity。通俗的说,Android的应用是由多个Activity的交互构成的各种库,当使用Android应用架构时,Android系统会通过一些C/C++库来支持我们使用的各个组件,使其更好地为我们服务。如SGL、SSL、SQLite、Webkit等。4.Android底层库包含哪些?系统C库,媒体库,SurfaceManager,LibWebCore,SGL系统C库,C语言标志库,系统最底层的库,C库通过Linux系统来调用。媒体库,Android系统多媒体库,该库支持多种常见格式的音频、视频的回收和录制,以及图片。SurfaceManager,LibWebCoreSGL:2D图形引擎库。SQLite:关系数据库。Webkit:Web浏览器引擎。Android运行环境:如CoreLibraries。操作系统层:Android的核心系统服务基于Linux内核,如安全性、内存管理、进程管理和驱动模型等都依赖于该内核。Linux内核同时也作为硬件和软件栈之间的抽象层。如:DisplayDriver、KeyBoardDriver等。2.Android应用程序的4大组件是什么?Activity、BroadcastIntentReceiver、ContentProvider、ServiceActivity,“活动”,在应用程序中,一个Activity通常就是一个单独的屏幕。每一个活动都被实现为一个独立的类,并且从活动基类中继承而来,活动类将会显示由视图控件组成的用户接口,并对事件做出响应。Intent,Android用Intent这个特殊类实现在Activity与Activity之间的切换。Intent用于描述应用的功能。在Intent的描述结构中,有两个最重要的部分:动作和动作对应的数据。ContentProvider是所有应用程序之间数据存储和检索的一个桥梁,实现了一组标准的方法,使得各个应用程序之间实现数据共享。Service,“服务”,Server是一个生命周期长且没有用户界面的程序。3.Android应用工程文件结构有哪些?源文件(包含Activity),R.java文件,AndroidLibrary,assets目录,res目录,drawble目录,layout目录,values目录,AndroidManifest.xml源文件(包含Activity)主程序继承Activity类,重写了onCreate(BundlesavedInstanceState)方法。setContentViewR.java文件在建立项目时自动生成,是只读模式,不能修改,R.java文件是定义该项目所有资源的索引文件。AndroidLibraryassets目录,res目录,drawble目录,layout目录,values目录,资源目录AndroidManifest.xml资源清单文件,包含了该项目中所使用的Activity、Service、Receiver。5.请介绍下Android中常用的五种布局。1)相对布局(RelativeLayout):相对布局中可以设置某一个视图相对于其他视图的位置,包括上、下、左、右。2)线性布局(LinearLayout):线性布局可分为水平线性布局和垂直线性布局。水平线性布局所有在这个布局中的视图都沿着水平方向线性排列。垂直线性布局则沿着垂直方向线性排列。3)框架布局(FrameLayout):所有添加到框架布局中的视图都是以层叠的方式显示,这种显示方式类似堆栈。4)表格布局(TableLayout):表格布局可以将视图按行、按列进行排列。5)绝对布局(AbsoluteLayout):可以任意设置视图定位位置。6.如何将一个Activity设置成窗口的样式在AndroidManifest.xml中定义Activity的地方加一句话android:theme=@android:style/Theme.Dialog7.请尽可能多的介绍下Android的几种数据存储方式a.SharedPreferences方式b.文件存储方式c.SQLite数据库方式e.网络存储方式SharedPreferences主要用于存储配置信息,类似windows中的inf文件,格式是xml的。SharedPreferences是一个轻量级的存储策略,和应用程序是属于从属关系文件存储与其他平台一样,Java基础课中都讲过数据库使用SQLite来存放数据SQLite数据库是移动数据库,轻量级的,IOS,Android都是使用这种数据库作为存储策略;虽然SQLite是轻量级的移动数据库,但是性能非常高(远高于Oracle);SQLite和传统数据库相比最大不同点就是不存在服务器和客户端的概念,Android系统自带了SQLite,所以也不需要安装;SQLite数据库的操作上更类似文件操作,而非传统的客户端服务器操作模式云存储其实就是提交数据给服务器去存放8.简单介绍Activity的生命周期,及涉及的函数9.简述GLSurFaceView的特性1)管理一个surface,这个surface就是一块特殊的内存,能直接排版到android的视图上2)管理一个EGLdisplay,它能让opengl把内容渲染到上述的surface上3)让渲染器在独立的线程里运作,和UI线程分离11.简述Activity和Intent、IntentFilter的作用,以及它们之间的关系Activity作用:向用户呈现操作界面,与用户交互Intent作用:启动另一个Activity,传递数据IntentFilter作用:可以帮助Activity跨应用调用,可以对Activity进行功能分组