Android应用程序开发(其次版)课后习题答案_第1页
Android应用程序开发(其次版)课后习题答案_第2页
Android应用程序开发(其次版)课后习题答案_第3页
Android应用程序开发(其次版)课后习题答案_第4页
Android应用程序开发(其次版)课后习题答案_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——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系统支持的三种菜单分别是:选项菜单、子菜单和快捷菜单。

(1)选项菜单是常用的Android系统菜单,可分为图标菜单和扩展菜单,图标菜单的子项最多是六个,支持显示图标,不支持单项选择框和复选框;而当子项多余六个时,采用扩展菜单,扩展菜单的子项是垂直排列,支持单项选择框和复选框,不支持显示图标。第一次启动选项菜单时,只需要调用一次onCreateMenu函数。

(2)子菜单的表现形式是浮动窗体的形式,适应小屏幕的显示形式,能够展示更加详细的信息,通过addSubMenu函数增加子菜单,但不支持嵌套。在选项菜单和快捷菜单中使用子菜单,便于显示和分类相像的菜单子项。

(3)快捷菜单采用动窗体的显示形式,启动方式特别,点击界面元素超过2秒后,则启动该界面元素的快捷菜单。每次启动快捷菜单时,都要调用一次onCreateMenu函数。4.说明使用操作栏为程序开发所带来的便利。答案:操作栏代替了传统的标题栏功能,右侧用来显示“选项菜单〞的菜单项,但所显示的内容,会根据操作栏所具有的空间不同而具有不同的现实方式。在屏幕尺寸较小的设备上,操作栏会自动隐蔽菜单项的文字,而仅显示菜单项的图标;而在屏幕尺寸较大的设备上,操作栏会同时显示菜单项的文字和图标。操作栏提供多个实用的功能,包括(1)将“选项菜单〞的菜单项显示在操作栏的右侧;(2)基于Fragment

实现类似于Tab页的导航切换功能;(3)为导航提供可“拖拽—放置〞的下拉列表;(4)可在操作栏上实现类似于“探寻框〞的功能。

第六章组件通信与广播消息

1.简述Intent的定义和用途。答案:

Intent是一个动作的完整描述,包含了动作的产生组件、接收组件和传递的数据信息。Intent为Activity、Service和BroadcastReceiver等组件提供交互能力,将一个组件的数据和动作传递给另一个组件。Intent的一个最常见的用途就是启动Activity和Service;另一个用途是在Android系统上发布广播消息,广播消息可以是接收到特定数据或消息,也可以是手机的信号变化或电池的电量过低等信息。

2.简述Intent过滤器的定义和功能。答案:Intent过滤器是一种根据Intent中的动作(Action)、类别(Categorie)和数据(Data)等内容,对适合接收该Intent的组件进行匹配和筛选的机制。Intent过滤器的作用是匹配数据类型、路径和协议,还包括可以用来确定多个匹配项顺序的优先级。每个Intent过滤器可以定义多个标签,程序开发人员可以使用自定义的类别,或使用Android系统提供的类别。3.简述Intent解析的匹配规则。答案:

Intent解析的匹配规则是:

(1)Android系统把所有应用程序包中的Intent过滤器集合在一起,形成一个完整的Intent过滤器列表;

(2)在Intent与Intent过滤器进行匹配时,Android系统会将列表中所有Intent过滤器的“动作〞和“类别〞与Intent进行匹配,没有指定“动作〞的Intent过滤器可以匹配任何的Intent,但是没有指定“类别〞的Intent过滤器只能匹配没有“类别〞的Intent;(3)把Intent数据Uri的每个子部与Intent过滤器的标签中的属性进行匹配;

(4)假使Intent过滤器的匹配结果多于一个,则可以根据在标签中定义的优先级标签来对Intent过滤器进行排序,优先级最高的Intent过滤器将被选择。以上每步中不匹配的都将被过滤掉。

4.编程实现具有“登录〞按钮的主界面,点击“登录〞按钮后开启一个新的Activity,新开启的Activity上面有输入用户名和密码的控件,在用户关闭这个Activity后,将用户名和密码传递到主界面的Activity中。略。

第七章后台服务

1.简述Service的基本原理和用途。

答案:

Service能够长期在后台运行,适用于无需用户干预,且规则或长期运行的后台功能。首先,由于Service没有用户界面,更加有利于降低系统资源的消耗,而且Service比Activity具有更高的优先级,因此在系统资源紧张时,Service不会被Android系统优先终止。即使Service被系统终止,在系统资源恢复后Service也将自动恢复运行状态,因此可以认为Service是在系统中永久运行的组件。Service除了可以实现后台服务功能,还可以用于进程间通信(InterProcessCommunication,IPC),解决不同Android应用程序进程之间的调用和通讯问题。

2.编程建立一个简单的进程内服务,实现比较两个整数大小的功能。服务提供IntCompare(Int,Int)函数,输入两个整数,输出较大的整数。略。

第八章数据存储与访问

1.应用程序一般允许用户自己定义配置信息,如界面背景颜色、字体大小和字体颜色等,尝试使用SharedPreferences保存用户的自定义配置信息,并在程序启动时自动加载这些自定义的配置信息。略。

2.尝试把第1题的用户自己定义配置信息,以INI文件的形式保存在

内部存储器上。略。

3.简述在嵌入式系统中使用SQLite数据库的优势。答案:

SQLite数据库的优势是其嵌入到使用它的应用程序中。这样不仅提高了运行效率,而且屏蔽了数据库使用和管理的繁杂性,程序仅需要进行最基本的数据操作,其他操作可以交给进程内部的数据库引擎完成。

第九章位置服务与地图应用1.探讨位置服务和地图应用的发展前景。答案:

位置服务不仅可以对手机用户进行定位,对手机用户的位置进行实时监测和跟踪,还可以查询有关位置附近的各种场所的资讯,所有的信息都可以显示在电子地图上。因此,定位服务的发展具有广泛的前景。在人们的生活中,最基本的信息就是“位置信息〞,特别是出现紧急状况时更需要“确凿的位置信息〞。据预计,到2023年,在各种移动通信业务用户数排名中,拥有位置服务业务的用户数将仅次于语音业务位居其次,高于E-mail、移动电子商务、移动银行等增值业务。移动定位服务无疑代表着一个全新的商机,移动通讯领域的商家都看好这个潜力巨大的市场。

第十章Widget组件开发

1.分析Widget的优势和不足。答案:

Widget是一个具有特定功能的视图,一般被嵌入到主屏幕中,用户在不启动任何程序的前提下,就可以在主屏幕上直接浏览Widget所显示的信息。Widget在主屏幕上显示自定义的界面布局,在后台周期性的更新数据信息,并根据这些更新的数据修改主屏幕的显示内容。Widget可以有效的利用手

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论