当前位置:文档之家› Android应用程序开发课后习题答案

Android应用程序开发课后习题答案

Android应用程序开发课后习题答案
Android应用程序开发课后习题答案

第一章Android简介

1.简述各种手机操作系统的特点.

答案:

目前,手机上的操作系统主要包括以下几种,分别是Android、iOS、Windows Mobile、Windows Phone 7、Symbian、黑莓、PalmOS和Linux。

(1)Android是谷歌发布的基于Linux的开源手机平台,该平台由操作系统、中间件、用户界面和应用软件组成,是第一个可以完全定制、免费、开放的手机平台。Android底层使用开源的Linux操作系统,同时开放了应用程序开发工具,使所有程序开发人员都在统一、开放的开发平台上进行开发,保证了Android应用程序的可移植性。

(2)iOS是由苹果公司为iPhone、iPod touch、iPad以及Apple TV开发的操作系统,以开放源代码的操作系统Darwin为基础,提供了SDK,iOS操作系统具有多点触摸操作的特点,支持的控制方法包括滑动、轻按、挤压和旋转, 允许系统界面根据屏幕的方向而改变方向,自带大量的应用程序。

(3)Windows Mobile是微软推出的移动设备操作系统,对硬件配置要求较高,一般需要使用高主频的嵌入式处理器,从而产生了耗电量大、电池续航时间短和硬件成本高等缺点,Windows Mobile系列操作系统包括Smartphone、Pocket PC和Portable Media Center。随着Windows Phone 7的出现,Windows Mobile 正逐渐走出历史舞台。

(4)Windows Phone 7具有独特的“方格子”用户界面,非常简洁,黑色背景下的亮蓝色方形图标,显得十分清晰醒目,集成了Xbox Live游戏和Zune音乐功能,可见Windows Phone 7对游戏功能和社交功能的重视。

(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++的函数库,包括:Surface Manager,支持显示子系统的访问,为多个应用程序提供2D、3D图像层的平滑连接;Media Framework,基于OpenCORE的多媒体框架,实现音频、视频的播放和录制功能,广泛支持多种流行的音视频格式,包括MPEG4、、MP3、AAC、AMR、JPG和PNG等;SQLite,轻量级的关系数据库引擎;OpenGL ES,基于硬件的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.浏览Android SDK帮助文档,了解Android SDK帮助文档的结构和用途。

略。

3.在Android SDK中,Android模拟器、Android调试桥和DDMS是Android应用程序开发过程中经常使用到的工具,简述这三个工具的用途。

答案:

Android模拟器主要用来调试Android应用程序,模拟器可以仿真手机的绝大部分硬件和软件功能,支持加载SD卡映像文件,更改模拟网络状态、延迟和速度,模拟电话呼叫和接收短信等。Android调试桥是用于连接Android设备或模拟器的工具,负责将应用程序安装到模拟器和设备中,或从模拟器或设备中传输文件。DDMS是Android系统中内置了调试工具,可以用来监视Android系统中进程、堆栈信息,查看logcat日志,实现端口转发服务和屏幕截图功能,模拟电话呼叫和SMS短信,以及浏览Android模拟器文件系统等。

第三章第一个Android程序

1.简述和文件的用途。

答案:

文件是ADT自动生成的文件,包含对drawable、layout和values目录内的资源的引用指针,Android程序能够直接通过R类引用目录中的资源。是XML格式的Android程序声明文件,包含了Android系统运行Android程序前所必须掌握的重要信息,这些信息包括应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等,而且每个Android程序必须在根目录下包含一个文件。

2.尝试建立一个支持Google APIs的AVD。

略。

3.使用Eclipse建立名为MyAndroid的工程,包名称为,使用第2题中建立的AVD,程序运行时显示Hello MyAndroid。

略。

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)onDestory,完全生命周期结束,释放资源

第五章 Android用户界面

1.简述6种界面布局的特点。

答案:

6种界面布局分别为:线性布局、框架布局、表格布局、相对布局、绝对布局和网格布局。

(1)线性布局的子元素可垂直或者水平排列,但是每一列/行中,只能有一个界面元素。

(2)框架布局是只存放一个元素的空白空间,且位置只能是空白空间的左上角,如果有多个子元素,后放置的子元素会遮挡先放置的子元素。

(3)表格布局将屏幕划分网格,把界面元素添加到网格中,支持嵌套,也可添加其他的界面布局。

(4)相对布局中的界面元素的位置是通过与其他的元素的相对位置确定的,具有灵活性。

(5)绝对布局的界面元素的位置是通过坐标确定的,他是不推荐使用的一种布局。

(6)网格布局将用户界面划分为网格,界面元素可随意摆放在这些网格中,界面元素可以占用多个网格的,使界面设计更为灵活。

2.参考下图中界面控件的摆放位置,使用多种布局方法实现用户界面,并对比各种布局实现的复杂程度和对不同屏幕尺寸的适应能力略。

3.简述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除了可以实现后台服务功能,还可以用于进程间通信(Inter Process Communication,IPC),解决不同Android应用程序进程之间的调用和通讯问题。

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

略。

第八章数据存储与访问

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

略。

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

略。

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

答案:

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

第九章位置服务与地图应用

1.讨论位置服务和地图应用的发展前景。

答案:

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

第十章 Widget组件开发

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

答案:

Widget是一个具有特定功能的视图,一般被嵌入到主屏幕中,用户在不启动任何程序的前提下,就可以在主屏幕上直接浏览Widget所显示的信息。Widget 在主屏幕上显示自定义的界面布局,在后台周期性的更新数据信息,并根据这些更新的数据修改主屏幕的显示内容。Widget可以有效的利用手机的屏幕,快捷、方便的浏览信息,为用户带来良好的交互体验。Widget需要定时更新数据,在一定程度上增加了设备的耗电量。

2.简述Widget的设计原则和注意事项。

答案:

Widget是主屏幕上的显示元素,不仅自身具有一定的设计规则,还要与主屏幕上其它的元素保持美观一致。

第十一章 Android NDK开发

1.简述Android NDK开发的优势和不足。

答案:

Android NDK的优势是利用核心模块使用本地代码(C/C++)来提高开发执行效率,提高了Android应用程序开发的灵活性。Android NDK的不足是使用C/C++语言的话,会增加程序的复杂性和程序调试的难度;另外,开发人员需要认识到CPU运算量大和内存消耗较少的部分使用本地代码运行效率最高。

2.说明Android NDK应用程序开发的一般步骤。

答案:

Android NDK应用程序开发的一般步骤是:

(1)下载Android NDK的安装包;

(2)下载并安装Cygwin;

(3)配置Cygwin的NDK开发环境;

(4)测试开发环境是否可以正常工作。

3.参考NDK的tow-libs示例,使用静态库实现AndroidNdkDemo示例中加法运算的函数功能。

略。

4.简述在代码中动态检测CPU类型的意义。

答案:

动态检测CPU类型有助于优化代码,利用根据CPU类型对C代码中的算法进行优化。

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

第一章 Android简介 1.简述各种手机操作系统的特点. 答案: 目前,手机上的操作系统主要包括以下几种,分别是Android、iOS、Windows Mobile、Windows Phone 7、Symbian、黑莓、PalmOS 和Linux。 (1)Android是谷歌发布的基于Linux的开源手机平台,该平台由操作系统、中间件、用户界面和应用软件组成,是第一个可以完全定制、免费、开放的手机平台。Android底层使用开源的Linux操作系统,同时开放了应用程序开发工具,使所有程序开发人员都在统一、开放的开发平台上进行开发,保证了Android应用程序的可移植性。 (2)iOS是由苹果公司为iPhone、iPod touch、iPad以及Apple TV开发的操作系统,以开放源代码的操作系统Darwin为基础,提供了SDK,iOS操作系统具有多点触摸操作的特点,支持的控制方法包括滑动、轻按、挤压和旋转, 允许系统界面根据屏幕的方向而改变方向,自带大量的应用程序。 (3)Windows Mobile是微软推出的移动设备操作系统,对硬件配置要求较高,一般需要使用高主频的嵌入式处理器,从而产生了耗电量大、电池续航时间短和硬件成本高等缺点,Windows Mobile系列操作系统包括Smartphone、Pocket PC和Portable Media Center。

随着Windows Phone 7的出现,Windows Mobile正逐渐走出历史舞台。 (4)Windows Phone 7具有独特的“方格子”用户界面,非常简洁,黑色背景下的亮蓝色方形图标,显得十分清晰醒目,集成了Xbox Live游戏和Zune音乐功能,可见Windows Phone 7对游戏功能和社交功能的重视。 (5)Symbian是为手机而设计的实时多任务32位操作系统,它的功效低,内存占用少,提供了开发使用的函数库、用户界面、通用工具和参考示例。操作系统不是完全开放的,核心代码不开放,但是API文档是公开的。 (6)黑莓系统主要在黑莓手机上使用,其特色是支持电子邮件推送功能,邮件服务器主动将收到的邮件推送到用户的手持设备上,而不需要用户频繁地连接网络查看是否有新邮件。同时,黑莓系统提供手提电话、文字短信、互联网传真、网页浏览及其它无线信息服务功能。黑莓系统主要针对商务应用,具有很高的安全性和可靠性。 (7)PalmOS由拥有较多的第三方软件,是32位的嵌入式操作系统,主要在移动终端上使用,操作系统本身所占的内存极小,不具备录音和MP3播放功能。 (8)Linux手机操作系统具有开放源代码的特性,但是也包含入门难度高,集成开发环境差,Linux的产品与个人计算机的连接性较差,具有较强的开发实力的公司很少等不足。 2.简述Android平台的特征

用 Eclipse 开发 Android 应用程序

在 Eclipse 环境中进行 Android 应用程序开发 开始之前 本教程介绍如何在 Eclipse 环境中进行 Android 应用程序开发,包括两个示例应用程序。第一个示例是一个基本的应用程序,涉及构建和调试的所有阶段。第二个应用程序示例涉及比较复杂的 Android 特性,包括联系人搜索和 Google Maps 地址查找。要想从本教程获得最大收益,具备移动开发经验会有帮助,但不是必需的。开发 Android 应用程序需要Java? 编程技能,但是对于本教程不是必需的。 关于本教程 我们为什么要关注 Android?有两个原因使 Android 成为重要的平台。首先,Google 引入了 Android,它在很短时间内就获得了市场的关注。Google 正在进军移动市场。它在这个市场上采取的第一个行动就是发布 Android 和 Open Handset Alliance,这是一个令人印象深刻的起点。第二,Android 不仅仅是另一种包含电话、菜单和触摸屏功能的移动平台。您将在本教程中了解到,Android 提供了一种不同的应用程序开发方法。由于可以对请求的操作和代码进行运行时绑定,Android 的体系结构支持高度可定制的软件环境。无论是考虑市场因素还是 Android 的技术方面,它都是一个值得研究的平台。 本教程分为以下几节: ?Android 基础知识和必需的工具 ?Android Software Developer Kit ?构建和调试 SaySomething Android 应用程序 ?创建内容提供器和 Google Maps 应用程序 系统需求 本教程需要结合使用几种技术。 Eclipse 平台Eclipse 是一个运行插件的平台。您应该安装 Eclipse Classic 的最新版本(本教程使用 V3.3.1)。Android Developer Tools按照安装 Android SDK中的说明安装 Android Developer Tools(Eclipse 插件)。 源代码本教程中的源代码片段包括: ?AndroidManifest.xml(片段)—这个文件是 Android 应用程序的应用程序部署描述符。 ?IntentReceiver —演示 IntentReceiver 的实现,这个类处理 AndroidManifest.xml 文件中 IntentFilter 标记所公布的 intent。 ?SaySomething.java —实现一个 Android 活动,这是本教程的示例应用程序的主要入口点。 ?Main.xml —这个文件包含 Android 活动所用的视觉元素或资源。 ?R.java —这个文件是由 Android Developer Tools 自动生成的,它把视觉资源“连接” 到 Java 源代码。 ?AndroidManifest.xml(完整)—这是完整的 AndroidManfest.xml 文件,包含每个重要元素的描述。

Android应用开发基础习题

-- 任务一Android 开发环境的搭建 第一部分知识回顾与思考 1.Android 的四层架构分别包括哪几层?分别起到什么作用? 答:Linux 内核层(Linux Kernel ):基于Linux 内核,内核为上层系统提供了系统服务。 系统库层(Libraries ):系统库基于C/C++ 语言实现,通过接口向应用程序框架层提供编程接口。 应用框架层(Application Framework ):为开发者提供了一系列的Java API,包括图形用户界面组件

View 、SQLite 数据库相关的API 、Service 组件等。 应用程序层(Applications ):包含了Android 平台中各式各样的应用程序。 第二部分职业能力训练 一、单项选择题(下列答案中有一项是正确的,将正确答案填入括号内) 1.Android 四层架构中,应用框架层使用的是什么语法?(C)A .CB .C++C.Java D.Android 2.Android 四层架构中,系统库层使用的是什么语法?(B)A .VBB.C /C++C.Java D .Android 3.应用程序员编写的Android 应用程序,主要是调用(B)提供的接口进行实现。 A .应用程序层DCB.应用框架层.应用视图层.系统库层

二、填空题(请在括号内填空) 1.在Android 智能终端中,有很多应用如拍照软件、联系人管理软件,它们都属于Android 的(应用程 序)层。 2.为了让程序员更加方便的运行调试程序,Android 提供了(模拟器),可以方便的将程序运行其上, 而不要实际的移动终端。 程序运行,我们需要安装(Java 3.为了支持)。JDK 三、简答题 1.简述Android 开发环境安装的步骤。 答:下载并安装JDK ,配置JDK 的环境变量; 从Anroid 官网上下载Android 开发组件(包含Eclipse 和

android程序设计

一、填空题 1、下列哪个不是Activity的生命周期方法之一() A. onCreate B. startActivity C. onStart D. onResume 2、下列用于进行文本输入的组件是() A、TextView B、Button C、EditText D、Label 3、下面哪个不是Android的界面布局方式() A、BorderLayout B、LinearLayout C、TableLayout D、RelativeLayout 4、下列不是手机操作系统的是( ) A. Android B. Window Mobile C. Apple IPhone IOS D.windows vista 5、定义LinearLayout垂直方向布局时设置的属性是() A.android:layout_height B.android:gravity C.android:layout D. android:orientation vertical 6、Android 项目工程下面的assets 目录的作用是什么( ) A、放置应用到的图片资源。Res/drawable B、主要放置一些文件资源,这些文件会被原封不动打包到apk 里面 C、放置字符串,颜色,数组等常量数据res/values D、放置一些与UI相应的布局文件,都是xml 文件res/layout 11、在XML布局 7、跳转到另一个Activity的方法是( ) A.runActivity() B.goActivity() C.startActivity() D.startActivityForIn() 8、用于进行文字显示的组件是( ) A.TextView B.Button C.EditText https://www.doczj.com/doc/c812484622.html,bel 9、下面退出Activity错误的方法是() A.finish() B.抛异常强制退出

Android应用开发试题

Android应用开发试题 一、选择题(每题2分,共30分) 1. 下列不是手机操作系统的是?(D) A.Android B. Window Mobile C. Apple IPhone IOS D.windows vista 2.Android的VM虚拟机是哪个?A A.Dalvik B.JVM C.KVM D.framework 3. AndroidVM虚拟机中运行的文件的后缀名为(B) A.class B.apk C.dex D.xml 4. 下面关于Android DVM的进程和Liunx的进程,应用程序的进程说法正确的是 A.DVM指dalivk的虚拟机.每一个Android应用程序都在自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例,而每一个DVM都是在Liunx中的一个进程,所以说可以认为是同一个概念。B B.DVM指dalivk的虚拟机.每一个Android应用程序都在自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例,而每一个DVM不一定都是在Liunx 中的一个进程,所以说可以认为不是一个概念。 C.DVM指dalivk的虚拟机.每一个Android应用程序都在自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例,而每一个DVM不一定都是在Liunx中的一个进程,所以说可以认为不是同一个概念。 D.DVM指dalivk的虚拟机.每一个Android应用程序都在自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例,而每一个DVM都是在Liunx中的一个进程,所以说可以认为是同一个概念。 5. 下列哪个可做EditText编辑框的提示信息?(D) A. android:inputType B. android:text C. android:digits D. android:hint 6. 在AndroidManifes.xml中描述一个Activity时,该Activity的label属性是指定什么( B) A.指定Activity的图标 B.指定Activity的显示图标 C.指定Activity和类相关联的类名 D.指定该Activity的唯一标识 7. 关于ContentValues类说法正确的是( A ) A.它和Hashtable比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是String类型,而值都是基本类型。 B.它和Hashtable比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是任意类型,而值都是基本类型。 C.它和Hashtable比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名可以使空,而值都是String类型。 D.它和Hashtable比较类似,也是负责存储一些名值对,但是它存储的名值对当中的名是String类型,而值也是String类型。 8. Activity对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行( A) A.onPause() B.onCreate() C.onResume() D.onStart 9. 下列哪个不是Activity的生命周期方法之一?(B) A. onCreate B. startActivity C. onStart D. onResume 10.如果在android应用程序中需要发送短信,那么需要在AndroidManifest.xml文件中增加什么样的权限( D). A.发送短信,无需配置权限

Android程序设计练习卷答案

1.在android程序中,Log.d()用于输出什么级别的日志信息?(A) A、调试 B、信息 C、警告 D、错误 2.以下情况不会创建Context对象的是(C) A.创建Application 对象时 B.创建Service对象时 C.创建ContentProvider对象时 D.创建Activity对象时 3.下列不属于Android中广播中的类别的是(D) A.Normal Broadcas B.Sticky Broadcast C.Local Broadcast D.Order broadcast 4.以下哪个不是Intent的Activity启动方式(A) A.FLAG_ACTIVITY_BROUGHT_TO_FIRST B.FLAG_ACTIVITY_CLEAR_TOP C.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET D.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS 5.安卓AndroidManifest.xml文件的子节点不包括(C) A.application B.services C.permission D.provider 6.下面那个不是Fragment的生命周期方法(D) A. onStart B. onAttach C. onDestoryView D. onRestart 7.下面那种不是安卓原生支持的Menu(A) A.Selected Menu B.Option Menu C.Submenu D.Context Menu 8.下面不属于android的动画分类的有(D) A、Tween B、Frame C、Property D、Animation 9.下列哪个不是安卓service自带的方法(A) A.OnResume B.onCreate C.onStartCommand D.onRebind 10.下列属于SAX解析xml文件的优点的是(B) A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能 B、不用事先调入整个文档,占用资源少 C、整个文档调入内存,浪费时间和空间 D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失 11.下列关于Soundpool和MediaPlayer的说法,错误的是(A) A.MediaPlayer支持多个音乐同时播放 B.MediaPlayer资源占用率高 C.MediaPlayer延迟时间较长 D.new MediaPlayer()后要调用prepare()方法才能播放 12.关于res/raw目录说法正确的是(A) A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式

Android应用程序开发个人总结

Android应用程序开发个人总结 Android应用程序开发个人总结范文 篇一:Android应用程序开发-个人总结 一、项目简介: 送祝福App是一款逢年过节为方便发送祝福信息的软件,并且介绍各种节日的相关情况。包含节日祝福短信,支持直接发送短信给好友,也可定时发送给好友,编写模版。为生活提供了便利。 二、个人在项目中承担的任务: 我是任务是整合成员负责的模块,把各个模块整合到一起,然后把主界面的效果做出来,主界面参考的是微信的界面 三、学习本门课程收获、体会及建议: 在本门课程中,我初步认识了安卓应用开发所需基本知识,比如安装体系结构,常用的控件以及API的使用方法,知道了安卓体系存储数据的方式。这一学期,安卓相关的知识自己掌握的不多,不过也透过安卓课程看到移动端应用的火热。这一个学期里,老师讲得比较细,自己单独下来练一个知识点了,也可以,不过当几个知识点的内容整合到一起,自己就凌乱了,自己的思路就不清晰。在期末项目中,我是任务是整合成员负责的模块,把各个模块整合到一起,然后把主界面的效果做出来,主界面参考的是微信的界面,由于时间和能力的限制,只完成了部分功能,功能没有完全实现。 篇二:Android程序员-201*年度个人工作总结和计划

逝者如斯夫,不舍昼夜!转眼间,自己在XX网里参加工作已经有一年有余了。回首即将逝去的201*年,可以说是平淡而不普通的一年,发现自己在各方面都比上一年有所进步、提高。一年的结束孕育着新一年的到来,新的一年意味着新的起点、新的挑战。昂首期待未来,总结以往经验。在新一年来临之际,我现把这一年的工作总结一下以及将新一年计划列一下。 大概3月份左右,XXXXApp第一期基本开发完成比较稳定的版本。在此之前,我主要负责参考XXXXApp的Android客户端的开发工作。XXXX第一期开发的难度系数相对比较低,开发起来还是相对的容易,所学到的基础知识基本上可以开发出来。我个人认为当时的开发效率还是比较低的,这里说的是整个项目的开发效率,不是个人负责工作的完成效率,换句话来说是团队的整体开发效率不高,没有达到高效。这个也许是团队协调与沟通交流还存在不足的地方。XXXXApp实际上基本可以满足用户的使用(表面),但是项目的代码管理(本质)比较杂乱、扩展性差、健壮性也不错、兼容性也不算好。这无疑导致开发的工作量大大的增加。产生这些问题的原因有团队的项目开发经验缺乏,有自己个人的开发水平有限、技能不足。简言之,我的专业技能还不够强。 在3月份之前,公司聘请了外包团队与我们的团队一起开发问答App。公司的目的培训公司的团队,让我们学习外包团队的技能。在外包团队的参与和指导下问答App开发工作相当顺利,团队的分工清晰、交流充分、协调都比较好。问答App的工作接近尾声,意味着XXX

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

第一章Android简介 1.简述各种手机操作系统的特点. 答案: 目前,手机上的操作系统主要包括以下几种,分别是Android、iOS、Windows Mobile、Windows Phone 7、Symbian、黑莓、PalmOS和Linux。 (1)Android是谷歌发布的基于Linux的开源手机平台,该平台由操作系统、中间件、用户界面和应用软件组成,是第一个可以完全定制、免费、开放的手机平台。Android底层使用开源的Linux操作系统,同时开放了应用程序开发工具,使所有程序开发人员都在统一、开放的开发平台上进行开发,保证了Android应用程序的可移植性。 (2)iOS是由苹果公司为iPhone、iPod touch、iPad以及Apple TV开发的操作系统,以开放源代码的操作系统Darwin为基础,提供了SDK,iOS操作系统具有多点触摸操作的特点,支持的控制方法包括滑动、轻按、挤压和旋转, 允许系统界面根据屏幕的方向而改变方向,自带大量的应用程序。 (3)Windows Mobile是微软推出的移动设备操作系统,对硬件配置要求较高,一般需要使用高主频的嵌入式处理器,从而产生了耗电量大、电池续航时间短和硬件成本高等缺点,Windows Mobile系列操作系统包括Smartphone、Pocket PC和Portable Media Center。随着Windows Phone 7的出现,Windows Mobile 正逐渐走出历史舞台。 (4)Windows Phone 7具有独特的“方格子”用户界面,非常简洁,黑色背景下的亮蓝色方形图标,显得十分清晰醒目,集成了Xbox Live游戏和Zune音乐功能,可见Windows Phone 7对游戏功能和社交功能的重视。 (5)Symbian是为手机而设计的实时多任务32位操作系统,它的功效低,内存占用少,提供了开发使用的函数库、用户界面、通用工具和参考示例。操作系统不是完全开放的,核心代码不开放,但是API文档是公开的。 (6)黑莓系统主要在黑莓手机上使用,其特色是支持电子邮件推送功能,邮件服务器主动将收到的邮件推送到用户的手持设备上,而不需要用户频繁地连接网络查看是否有新邮件。同时,黑莓系统提供手提电话、文字短信、互联网传真、网页浏览及其它无线信息服务功能。黑莓系统主要针对商务应用,具有很高的安全性和可靠性。 (7)PalmOS由拥有较多的第三方软件,是32位的嵌入式操作系统,主要在移动终端上使用,操作系统本身所占的内存极小,不具备录音和MP3播放功能。 (8)Linux手机操作系统具有开放源代码的特性,但是也包含入门难度高,集成开发环境差,Linux的产品与个人计算机的连接性较差,具有较强的开发实力的公司很少等不足。 2.简述Android平台的特征 答案: Android广泛支持GSM、3G和4G的语音与数据业务,支持接收语言呼叫和SMS

Android程序设计练习卷答案

1.在android程序中,()用于输出什么级别的日志信息(A) A、调试 B、信息 C、警告 D、错误 2.以下情况不会创建Context对象的是(C) A.创建Application 对象时 B.创建Service对象时 C.创建ContentProvider对象时 D.创建Activity对象时 ] 3.下列不属于Android中广播中的类别的是(D) Broadcas Broadcast Broadcast broadcast 4.以下哪个不是Intent的Activity启动方式(A) 5.安卓文件的子节点不包括(C) & 6.下面那个不是Fragment的生命周期方法(D) A. onStart B. onAttach C. onDestoryView D. onRestart 7.下面那种不是安卓原生支持的Menu(A) Menu Menu Menu ( 8.下面不属于android的动画分类的有(D) A、Tween B、Frame C、Property D、Animation 9.下列哪个不是安卓service自带的方法(A) A.OnResume 10.下列属于SAX解析xml文件的优点的是(B) @ A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能 B、不用事先调入整个文档,占用资源少 C、整个文档调入内存,浪费时间和空间 D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失 11.下列关于Soundpool和MediaPlayer的说法,错误的是(A) 支持多个音乐同时播放 资源占用率高 { 延迟时间较长

Android程序开发实验报告

山西大学 物理电子工程学院 论文题目:基于Android系统的GPS 程序开发 学号:* 姓名:* * * 指导老师:* *

摘要 在日常生活中,我们经常需要知道自己的具体位置,尤其是在 旅游或陌生城市中。而手机作为目前最常见、最方便的电子信息载体,无疑是我们最好的选择。为了让智能手机用户能够随时随地查询GPS 所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上。本文选择的是最常见的Android系统的程序开发。对于软件从业人员来说,该平台具有无限的吸引力。 因此,本文首先介绍安卓系统在个人计算机上开发平台的搭建,并尝试在安卓系统上开发一款基于手机自带GPS组件的GPS应用。 关键字:Android,GPS,SDK,JDK,ADT,Eclipse 一引言 (一)开发背景 随着网络世界的深入生活,地球网络化已经是一条必然之路。而今后的网络也将逐渐的走向移动互联网的轨道。像手机,平板计算机,笔记本计算机等可以搭乘移动互联网的产品中使用人数最多的数码产品便是智能手机了。它已经在逐步的取代其他的电子产品的市场份额。据《2013-2017年中国智能手机行业市场需求预测与投资战略规划分析报告》估算,2012前三季度,全球智能手机用户总数已经突破了10亿大关。而2011前三季度的用户量只有约7亿户。可以看出,智能手机市场的潜力不可估量。

(二)Android 与GPS 简介 1.Android 是一种基于Linux 的自由及开放源代码的操作系统,主要使用于移动设 备,如智能手机和平板计算机,由Google 公 司和开放手机联盟领导及开发。 2011年第一季度,Android 在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android 占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。 Android 的系统架构和其操作系统一 样,采用了分层的架构。从架构图看, Android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运 行库层和Linux 内核层。 Android 系统所具有的特点有:开放性、丰富的硬件、方便开发。 2.GPS 是英文Global Positioning System (全球定位系统) 的简称。GPS 起始于1958年美国军方的一个项目, 1964年投入使用。GPS 定位的基本原理是根据高速运动的卫星瞬间位置作为已知的起算数据,采用空间距离后方交会的方法,确定待测点的位置。GPS 由空间部分、地面控制系统、用户设备部分三部分组成。作为先进的测量手段和新的生产力,GPS 已经融入了国民经济建设、国防建设和社会发展的各个应用领域。GPS 技术与我们的日常生活日益相关。

android程序设计a

一、选择题 1、下列哪个不是Activity的生命周期方法之一() A. onCreate B. startActivity C. onStart D. onResume 2、下列用于进行文本输入的组件是() A.TextView B.Button C.EditText https://www.doczj.com/doc/c812484622.html,bel 3、如果要让标签文本(TextView)上的文字居中显示,需要设置哪个属性() A.android:orientation B.android:layout_gravity C.android:gravity D.android:layout_weight 4、Activity的onCreate()什么时候调用( ) A.当第一次启动Activity时 B.当onCreate方法被执行之后 C.当界面被隐藏时 D.当界面重新显示时 5、关于应用程序的生命周期,一个Activity从启动到运行状态需要执行 3个方法,请选择一个正确的执行顺序。( ) A. onCreate()->onStart()->onResume() B. onStart()->onCreate()->onResume() C. onCreate()->onResume()->onStart() D. onStart()->onResume()->onCreate() 6、android 关于service生命周期的onCreate()和onStart()说法正确的是 ( ) A.当第一次启动的时候先后调用onCreate()和onStart()方法 B.当第一次启动的时候只会调用onCreate()方法 C.如果service已经启动,将先后调用onCreate()和onStart()方法 D.如果service已经启动,只会执行onStart()方法,同时执行onCreate()方法 7、跳转到另一个Activity的方法是( ) A.runActivity() B.goActivity() C.startActivity() D.startActivityForIn() 8、用于进行文字显示的组件是( ) A.TextView B.Button C.EditText https://www.doczj.com/doc/c812484622.html,bel

Android应用程序开发完整训练:从零起步通过23个动手实战案例精通App开发

从零起步,24小时内通过23个动手实战案例,循序渐进的对Android商业级别的应用程序开发要点各个击破,依托于在多年的Android(6款完整的硬件产品和超过20款应用软件)开发和企业级培训经验(超过150期的次Android的企业内训和公开课),旨在在实务的基础之上帮助你完成任何复杂程序的高质量Android应用程序开发,让Android开发跟上想象的速度。最后,通过ActivityManagerService揭秘Android应用程序一切行为背后的核心根源,让你从此开发应用程序居高零下、举重若轻。 课程要点: 1,抽取Android应用开发中用到的最精华的Java技术加以剖析; 2,从零起步构建Android开发环境和编写并彻底剖析第一个Android程序; 3,彻底剖析不同Activity之间所有的交互模式; 4,根据商业化场景彻底剖析Android的生命周期及其使用的最佳时间; 5,使用JUnit测试Android业务代码; 6,掌握Android基本和核心的UI开发技术; 7,”Android商业化高级UI实战”是根据过去20多款商业级别Android应用程序开发尤其是类似CRM系统中最经典、最经常使用的技术抽取而成,掌握之后基本上不会在遇到UI 方面的难点; 8,细致剖析并实战Android性能测试,找出性能瓶颈,并进行代码优化,分享代码优化的最佳实践; 9,对数据的处理时Android绝大多数应用程序的核心,尤其是对CRM系统而言,这一天,我们会对Android中的本地数据处理方式及其商业使用场景进行彻底剖析和实战; 10,从SharedPreferences到内部文件系统,从SDCard操作到SQLite数据库,从XML 和JSON的解析于生成到数据共享统一接口ContentProvider,对Android本地的数据处理方式进行地毯式轰炸; 11,通讯录的操作的原理、流程和场景等进行了情景再现性的代码实战; 12,通过Android手机卫士商业级别的代码案例实战Android中BroadcastReceiver和Service; 13,根据过去20多款程序的商业实战总结出了能够解决基于HTTP协议的任意文件类型、任意大小文件的网络上传和下载,Android网络开发从此一劳永逸; 14,实战WiFi数据交换; 15,尤其是额外提到异步http框架,具备很强的商业价值; 16,Android横竖屏切换的经典场景、生命周期和解决方案; 17,实战构建多语言国际化的Android应用程序; 18,如何编译APK来提高应用的安全性; 19,如何反编译Android应用 20,通过Android中WebView的特性洞悉Android中JavaScript与Java相互沟通的密码,追寻浏览器和HTML5开发的架构和技术实现根源; 21,使用NDK等技术利用C/C++的高效性来提高应用程序的性能; 22,实现Android中以Looper、Handler、Message、MessageQueue为核心的线程间通信方式; 23,实战并剖析AsyncTask框架实现的源代码,并提出对AsyncTask缺陷的解决方案;

本科毕业设计--基于android平台的手机应用软件设计与实现

安阳工学院 计算机科学与工程学院 JAVA程序设计课程综合项目报告 项目题目:基于Android平台的手机应用软件设计与实现专业班级:计算机科学与技术(信息技术)11-1 学生姓名:吕鹏 学生学号:201103010042 指导教师姓名:许研 2013年12月

摘要 随着IT技术的发展,移动开发已被广泛的应用于社会的各个领域,成为推动社会发展的技术动力。而在移动开发中,Android开发近些年来突飞猛进的发展,在智能手机领域中的市场份额以及超过80%。同样,基于安卓平台的手机应用开发也达到前所未有的高度,各种安卓手机应用软件竞相出现。本次的JAVA 课程设计将基于安卓的平台,因为安卓开发主要基于JAVA语言和XML语言。本次所做的手机应用软件,可实现系统的登录、计算器、打电话、发短信、上网等简单功能实现。在此系统的实现过程中不仅提高了JAVA语言编程,而且加入了Android的成分,提高了软件设计的兴趣性。 关键词:手机应用软件开发,Java程序设计语言,Android开发。

目录 摘要 (2) 第1章系统目标 (5) 第2章系统功能介绍 (6) 2.1系统功能总框图 (6) 2.2 模块功能介绍 (6) 2.2.1 登录模块功能介绍 (6) 2.2.2 等待模块功能介绍 (7) 2.2.3系统主界面模块功能介绍 (8) 2.2.4短信和拨号模块功能介绍 (8) 2.2.5计算器模块功能介绍 (9) 2.2.6网上冲浪模块功能介绍 (10) 第三章系统功能实现 (11) 3.1 系统登录模块设计 (11) 3.1.1 登录框布局设计 (11) 3.1.2 登录对话框设计 (13) 3.2 等待模块设计 (15) 3.3 系统主界面模块设计 (16) 3.3.1 主界面XML布局设计 (16) 3.3.2 主界面背景图片设计 (18) 3.3.3 主界面功能实现设计 (18) 3.4 短信和拨号模块设计 (20) 3.4.1短信功能实现设计 (20) 3.4.2 拨号功能实现设计 (22) 3.5 计算器模块设计 (22) 3.5.1 计算器界面设计 (22) 3.5.2 计算器功能实现设计 (22) 3.6 网上冲浪模块设计 (24) 3.6.1 网上冲浪模块XML布局设计 (24)

《Android应用程序设计》教学大纲

《Android应用程序设计》课程教学大纲 课程类别:专业核心课 适用对象: 嵌入式技术与应用专业 总学时:60讲授学时:30课内实践学时:30 一、课程的性质、任务与课程的教学目标 (一)课程的性质、任务 1.课程的性质 《Android应用程序设计》课程是<<嵌入式技术与应用专业>>的专业核心课(学习领域)。该课程的先修课程为<<嵌入式C语言程序设计>>、<<嵌入式实时操作系统>>、<>和<>; 其后续课程为<<嵌入式Android项目设计与开发>>、<<嵌入式Android高级应用开发实训>>和<<嵌入式Android高级应用开发实训>>。 2.课程的任务 本课程主要讲授 Google Android的移动互联软件开发平台的基本原理、应用框架和基本应用程序设计,涉及从基础支持平台到系统应用框架、从Java开发包到Android开发环境与模拟器、从线性布局到Android屏幕复杂布局、从Android控件Widgets到Android的图形用

户界面、从Android数据存储到Android多媒,以及手机乐游项目等的综合应用编程。 本课程的核心知识单元主要包括:Android开发环境、Android屏幕布局、Android控件Widgets、 Android的图形用户界面、Android 数据存储、Android多媒体等,讲授Android应用程序框架、Activity 生命周期、典型屏幕控件、图形用户界面设计、文件存储、Preference 、嵌入式数据库SQLite 、Mp3 Player多媒体等应用核心知识和应用技术。 本课程将Java作为编程语言。学习使用Android 集成开发环境及其Eclipse Android编译器,掌握Android应用程序设计和调试方法。通过两个综合Android应用项目的设计与实现,让学生熟练掌握Android基本应用编程知识和编程技巧。 (二)课程的教学目标 1.基本理论要求 了解Android平台的基本结构,熟悉Android应用软件开发环境,基本掌握Android应用编程的集成开发环境、常用软件软件包、屏幕布局方式、典型控件、数据存储技术和应用程序设计。 本课程包含有旨在提高学生Android应用程序设计与实现能力的综合项目实训。 2.基本技能要求 (1)Android开发环境构建和参数配置的能力; (2)Android应用程序调试能力; (3) 掌握Android应用程序基本框架,具备基本应用程序设计与实现能力;

Android综合程序设计(2048游戏)

山东轻工业学院实验报告成绩 实验项目名称实验七、 Android综合程序设计(2048游戏) 一、实验目的 通过进行一个较为完整的Android应用程序开发,学习综合运用课程所学的相关Android开发知识的,进行移动软件设计的相关能力。在模拟软件开发的过程中,掌握从问题发现、系统分析、系统规划到代码实现中每一步所要做的工作。掌握实际软件开发的过程和方法。 二、主要仪器设备、试剂或材料 微型计算机;JDK、eclipse、ADT、Android SDK等软件包 三、实验内容 运用Android制作一个简单的2048小游戏。 2048游戏的制作属于电子游戏中的益智类小游戏,它做到了娱乐性、趣味性、教育性相统一。益智类的游戏即是需要去开动大脑去思考从而获得游戏的胜利。简单的益智类游戏可以使玩家在娱乐中不断的开发大脑。这样一来就实现了在娱乐中学习 四、程序设计思路、运行及及结果分析 设计思路: (1)初始化 进入游戏,初始化4*4表格,并随机产生两个数字(2或者4);二维数组this.tables 表格循环存入数据;random1, random2 ,random11, random22四个随机数可以确定两个2的xy位置; 方法newNumber里面,根据位置i,j和级别num可以确定一个新的数字;创建背景cell和cell上面的数字标签cellLabel;并根据num确定是否显示cellLabel;最后给cell关联一个data数据;特别说明这里的number:num不是精灵上面的数字而是精灵的级别,比如number=11 则数字是1024。 (2)游戏结束的判断 每次发生卡片移动,都要检查游戏还能否继续,是否已经结束。使用函数CheckComplete()完成游戏是否失败的检查。 (3)游戏的计分 在卡片的每一次移动的时候判断是否有两个相同数字进行相加,凡是有相见的两个数字其相加所得的和需要存入计分中,其中如果游戏获得了最高分要对最高分进行保存。public class BestScore { private SharedPreferences sp; public BestScore(Context context){ sp = context.getSharedPreferences("bestscore", context.MODE_PRIV ATE); } public int getBestScore(){ int bestscore = sp.getInt("bestscore", 0); return bestscore; } public void setBestScore(int bestScore){ Editor editor = sp.edit(); editor.putInt("bestscore", bestScore);

Android应用开发基础习题集

任务一Android开发环境的搭建 第一部分知识回顾与思考 1.Android的四层架构分别包括哪几层?分别起到什么作用? 答:Linux内核层(Linux Kernel):基于Linux内核,内核为上层系统提供了系统服务。 系统库层(Libraries):系统库基于C/C++语言实现,通过接口向应用程序框架层提供编程接口。 应用框架层(Application Framework):为开发者提供了一系列的Java API,包括图形用户界面组件View、SQLite数据库相关的API、Service组件等。 应用程序层(Applications):包含了Android平台中各式各样的应用程序。 第二部分职业能力训练 一、单项选择题(下列答案中有一项是正确的,将正确答案填入括号内)1.Android四层架构中,应用框架层使用的是什么语法?( C ) A.C B.C++ C.Java D.Android 2.Android四层架构中,系统库层使用的是什么语法?( B ) A.VB B.C /C++ C.Java D.Android 3.应用程序员编写的Android应用程序,主要是调用( B )提供的接口进行实现。 A.应用程序层B.应用框架层C.应用视图层D.系统库层 二、填空题(请在括号内填空) 1.在Android智能终端中,有很多应用如拍照软件、联系人管理软件,它们都属于Android的(应用程序)层。 2.为了让程序员更加方便的运行调试程序,Android提供了(模拟器),可以

方便的将程序运行其上,而不要实际的移动终端。 3.为了支持Java程序运行,我们需要安装(JDK)。 三、简答题 1.简述Android开发环境安装的步骤。 答:下载并安装JDK,配置JDK的环境变量; 从Anroid官网上下载Android开发组件(包含Eclipse和Android SDK、ADT); 安装Android开发环境(包括配置Android SDK的环境变量、打开Eclipse通过菜单设定Android SDK路径)。 2.简述Android应用程序创建和运行的步骤。 答:通过菜单创建Android应用程序,设置应用程序名、Android版本等基本信息。 点击菜单中的运行按钮可以直接运行Android项目(也可以通过菜单配置运行参数,指定运行的模拟器)。 任务二星座查询工具的设计与实现 第一部分知识回顾与思考 1.Android的属性、方法、监听器如何使用,它们分别起了什么作用? 答:Android控件的属性,可以通过xml文件设定,通过设定控件的属性能够静态的改变控件的样式和一些特性; 控件的方法,可以通过编写代码动态调用方法,在程序中调用方法可以动态的修改控件的样式、也可以获得控件的相关信息; 控件的监听器,可以通过编码为控件创建、设定监听器,监听器可以监听控件发生的事件,一旦发生某个监听的事件可以触发相应的处理代码。

android应用程序开发流程要点

目录 1小结要点 (1) 2JAVA基础知识 (1) 3ANDROID应用程序开发环境搭建 (2) 4ANDROID应用程序目录结构 (5) 5新建一个ANDROID应用 (6) 6ANDROID四大组件及界面UI元素 (7) 7ANDROID应用程序的工作机制 (8) 8ANDROID应用程序常用功能接口 (12)

1小结要点 1、熟悉了解java面向对象编程思想及基础知识; 2、Android应用程序开发环境的搭建; 3、了解Android应用程序的目录结构; 4、新建一个android应用(Hello,Android World!) 5、熟悉Android四大组件及控件; 6、理解Android应用程序开发的工作机制; 7、熟悉常用功能的接口; 2Java基础知识 表一JA V A语法与C语言语法对比

3Android应用程序开发环境搭建 使用的工具:java jdk、android SDK、eclipse 、ADT插件 方法一: 一、首先安装java jdk并设置环境变量; 二、将别人已经安装好的eclipse、android SDK目录拷贝到自己的电脑; 三、打开eclipse设置android SDK路径(配置ADT)。 1、Eclipse启动后,选择Window > Preferences...,在打开的属性框,选择Android,如下图;可以 看到:

按钮即可看到我们安装SDK包,如下图: 四、android SDK的配置 1、在Eclipse中选择Window-Android SDK and A VD Manager ,或者在android-sdk-windows文件 夹中双击SDK Manager.exe,可以看到类似如界面:

相关主题
文本预览
相关文档 最新文档