Android应用程序开发(第二版)课后习题答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章Android简介1.简述各种手机操作系统的特点.答案:目前,手机上的操作系统主要包括以下几种,分别是Android、iOS、WindowsMobile、WindowsPhone7、Symbian、黑莓、PalmOS和Linux。(1)Android是谷歌发布的基于Linux的开源手机平台,该平台由操作系统、中间件、用户界面和应用软件组成,是第一个可以完全定制、免费、开放的手机平台。Android底层使用开源的Linux操作系统,同时开放了应用程序开发工具,使所有程序开发人员都在统一、开放的开发平台上进行开发,保证了Android应用程序的可移植性。(2)iOS是由苹果公司为iPhone、iPodtouch、iPad以及AppleTV开发的操作系统,以开放源代码的操作系统Darwin为基础,提供了SDK,iOS操作系统具有多点触摸操作的特点,支持的控制方法包括滑动、轻按、挤压和旋转,允许系统界面根据屏幕的方向而改变方向,自带大量的应用程序。(3)WindowsMobile是微软推出的移动设备操作系统,对硬件配置要求较高,一般需要使用高主频的嵌入式处理器,从而产生了耗电量大、电池续航时间短和硬件成本高等缺点,WindowsMobile系列操作系统包括Smartphone、PocketPC和PortableMediaCenter。随着WindowsPhone7的出现,WindowsMobile正逐渐走出历史舞台。(4)WindowsPhone7具有独特的“方格子”用户界面,非常简洁,黑色背景下的亮蓝色方形图标,显得十分清晰醒目,集成了XboxLive游戏和Zune音乐功能,可见WindowsPhone7对游戏功能和社交功能的重视。(5)Symbian是为手机而设计的实时多任务32位操作系统,它的功效低,内存占用少,提供了开发使用的函数库、用户界面、通用工具和参考示例。操作系统不是完全开放的,核心代码不开放,但是API文档是公开的。(6)黑莓系统主要在黑莓手机上使用,其特色是支持电子邮件推送功能,邮件服务器主动将收到的邮件推送到用户的手持设备上,而不需要用户频繁地连接网络查看是否有新邮件。同时,黑莓系统提供手提电话、文字短信、互联网传真、网页浏览及其它无线信息服务功能。黑莓系统主要针对商务应用,具有很高的安全性和可靠性。(7)PalmOS由拥有较多的第三方软件,是32位的嵌入式操作系统,主要在移动终端上使用,操作系统本身所占的内存极小,不具备录音和MP3播放功能。(8)Linux手机操作系统具有开放源代码的特性,但是也包含入门难度高,集成开发环境差,Linux的产品与个人计算机的连接性较差,具有较强的开发实力的公司很少等不足。2.简述Android平台的特征答案:Android广泛支持GSM、3G和4G的语音与数据业务,支持接收语言呼叫和SMS短信,支持数据存储共享和IPC消息机制,为地理位置服务(如GPS)、谷歌地图服务提供易于使用的API函数库,提供组件复用和内置程序替换的应用程序框架,提供基于WebKit的浏览器,广泛支持各种流行的视频、音频和图像文件格式。Android系统提供了访问硬件的API库函数,用来简化像摄像头、GPS等硬件的访问过程。在内存和进程管理方面,Android为了保证高优先级进程运行和正在与用户交互进程的响应速度,允许停止或终止正在运行的低优先级进程,以释放被占用的系统资源。Android进程的优先级并不是固定的,而是根据进程是否在前台或是否与用户交互而不断变化的。在界面设计上,Android提供了丰富的界面控件供使用者调用,从而加快了用户界面的开发速度,也保证了Android平台上的程序界面的一致性。Android提供轻量级的进程间通讯机制Intent,使用跨进程组件通信和发送系统级广播成为可能。Android提供了Service作为无用户界面、长时间后台运行的组件,可为应用程序提供特定的后台功能,还可以实现事件处理或数据更新等功能。Android支持高效、快速的数据存储方式,同时为了便于跨进程共享数据,Android提供了通用的共享数据接口ContentProvider,可以无需了解数据源、路径的情况下,对共享数据进行查询、添加、删除和更新等操作。Android支持位置服务和地图应用,可以通过SDK提供的API直接获取当前的位置,追踪设备的移动路线,或设定敏感区域,并可以将Google地图嵌入到Android应用程序中,实现地理信息可视化开发。Android支持Widget插件,可以方便地在Android系统上开发桌面应用,实现比较常见的一些桌面小工具,或在主屏上显示重要的信息。Android支持使用本地代码(C或C++)开发应用程序的部分核心模块,提高了程序的运行效率,并有助于增加Android开发的灵活性。3.描述Android平台体系结构的层次划分,并说明各个层次的作用。答案:Android采用了软件堆层的架构,共分为四层:Linux内核、中间件层、应用程序框架层和应用程序层。(1)Linux内核提供由操作系统内核管理的底层基础功能。(2)中间件层包含函数库和Android运行时,函数库主要提供了六个基于C/C++的函数库,包括:SurfaceManager,支持显示子系统的访问,为多个应用程序提供2D、3D图像层的平滑连接;MediaFramework,基于OpenCORE的多媒体框架,实现音频、视频的播放和录制功能,广泛支持多种流行的音视频格式,包括MPEG4、H.264、MP3、AAC、AMR、JPG和PNG等;SQLite,轻量级的关系数据库引擎;OpenGLES,基于硬件的3D图像加速;FreeType,位图与矢量字体渲染;WebKit,Web浏览器引擎;SGL,2D图像引擎;SSL,数据加密与安全传输的函数库;libc,标准C运行库,是Linux系统中底层的应用程序开发接口。Android运行时包含核心库和Dalvik虚拟机,核心库为程序开发人员提供了Android系统的特有函数功能和Java语言基本函数功能,Dalvik虚拟机实现了基于Linux内核的线程管理和底层内存管理,也可以执行Dalvik可执行格式。(3)应用程序框架提供了Android平台基本的管理功能和组件重用机制。(4)应用程序提供了一系列核心应用程序。第二章Android开发环境1.尝试安装Android开发环境,并记录安装和配置过程中所遇到的问题。提示:首先下载并安装JDK,然后下载并安装eclipse,还要下载并安装SDK和ADT插件,并完成相应的设置。2.浏览AndroidSDK帮助文档,了解AndroidSDK帮助文档的结构和用途。略。3.在AndroidSDK中,Android模拟器、Android调试桥和DDMS是Android应用程序开发过程中经常使用到的工具,简述这三个工具的用途。答案:Android模拟器主要用来调试Android应用程序,模拟器可以仿真手机的绝大部分硬件和软件功能,支持加载SD卡映像文件,更改模拟网络状态、延迟和速度,模拟电话呼叫和接收短信等。Android调试桥是用于连接Android设备或模拟器的工具,负责将应用程序安装到模拟器和设备中,或从模拟器或设备中传输文件。DDMS是Android系统中内置了调试工具,可以用来监视Android系统中进程、堆栈信息,查看logcat日志,实现端口转发服务和屏幕截图功能,模拟电话呼叫和SMS短信,以及浏览Android模拟器文件系统等。第三章第一个Android程序1.简述R.java和AndroidManefiest.xml文件的用途。答案:R.java文件是ADT自动生成的文件,包含对drawable、layout和values目录内的资源的引用指针,Android程序能够直接通过R类引用目录中的资源。AndroidManifest.xml是XML格式的Android程序声明文件,包含了Android系统运行Android程序前所必须掌握的重要信息,这些信息包括应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等,而且每个Android程序必须在根目录下包含一个AndroidManifest.xml文件。2.尝试建立一个支持GoogleAPIs的AVD。略。3.使用Eclipse建立名为MyAndroid的工程,包名称为edu.hrbeu.MyAndroid,使用第2题中建立的AVD,程序运行时显示HelloMyAndroid。略。4.尝试使用命令行方式建立一个Android应用程序,并完成apk打包和程序安装过程。略。第四章Android生命周期1.简述Android系统前台进程、可见进程、服务进程、后台进程和空进程的优先级排序原因。答案:前台进程是Android系统中最重要的进程,是与用户正在交互的进程,所以被排放在首位;可见进程和服务进程都是包含服务的进程,不在前台与用户交互,不响应界面时间的进程,而是在后台长期运行,所以,他们被排放在前台进程之后;而后台进程和空进程是不包含任何已经启动服务的进程,在系统比较资源比较紧张的时候,会首先被清除,所以他们被排放在最后。2.简述Android系统的四种基本组件Activity、Service、BroadcaseReceiver和ContentProvider的用途。答案:Activity是Android程序的呈现层,显示可视化的用户界面,并接收与用户交互所产生的界面事件,用于提示用户程序已经正常启动。Service一般用于没有用户界面,但需要长时间在后台运行的应用。BroadcaseReceiver是用来接受并响应广播消息的组件。ContentProvider是Android系统提供的一种标准的共享数据的机制,应用程序可以通过ContentProvider访问其他应用程序的私有数据。3.简述Activity生命周期的四种状态,以及状态之间的变换关系。答案:Activity的四种状态,分别是活动状态、暂停状态、停止状态和非活动状态。活动状态是完全能被用户看到,与用户进行交互的状态;暂停状态是Activity不处于用户界面的最上层,不能与用户进行交互的状态;停止状态是指Activity在界面上完全不能被用户看到的状态;除以上三种状态之外,就是非活动状态。他们的变换关系是,当第一个Activity启动后,则Activity处于活动状态;如果启动新的Activity,部分遮挡先前的Activity,则先前的Activity转换为暂停状态;如果新启动的Activity完全遮挡了先前的Activity,则先前的Activity转换为停止状态;活动的Activity被用户关闭,或暂停状态或停止状态的Activity被系统终止后,都会转换成非活动状态。4.简述Activity事件回调函数的作用和调用顺序。答案:Activity事件回调函数具体分为Activity生命周期的事件回调函数和Activity状态保存和恢复函数的事件回调函数,Activity生命周期的事件回调函数的作用主要是为了让Activity程序了解自身状态的变化;Activity状态保存和恢复函数的事件回调函数的作用主要是保存或恢复Activity的状态信息。Activity事件的调用顺序是:(1)onCreate,完全生命周期开始,初始化Activity;(2)onStart,可视生命周期开始,对用户界面进行必要的更改;(3)onRestoreInstanceState,恢复onSaveLnstanceState保存的用户界面信息;(4)onResume,活动生命周期开始,保存界面信息;(5)onSaveInstanceState,在onResume后,保存界面信息;(6)onRestart,重新进入可视生命周期前,载入界面所需要的更改信息;(7)onPause,活动生命周期结束,保存持久地数据或释放占用的资源;(8)onStop,可视生命周期结束,保存持久地数据或释放占用的资源;(9)onDesto

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功