作业习题Android系统应用开发Android程序设计基础版第123章概要.docx

上传人:b****7 文档编号:10278924 上传时间:2023-02-09 格式:DOCX 页数:212 大小:317.22KB
下载 相关 举报
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx_第1页
第1页 / 共212页
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx_第2页
第2页 / 共212页
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx_第3页
第3页 / 共212页
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx_第4页
第4页 / 共212页
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx_第5页
第5页 / 共212页
点击查看更多>>
下载资源
资源描述

作业习题Android系统应用开发Android程序设计基础版第123章概要.docx

《作业习题Android系统应用开发Android程序设计基础版第123章概要.docx》由会员分享,可在线阅读,更多相关《作业习题Android系统应用开发Android程序设计基础版第123章概要.docx(212页珍藏版)》请在冰豆网上搜索。

作业习题Android系统应用开发Android程序设计基础版第123章概要.docx

作业习题Android系统应用开发Android程序设计基础版第123章概要

《Android系统应用开发》

作业习题暨总复习题

(Android程序设计基础版)

2013-2014-2学期

 

主讲教师:

贾震斌

第1章认识一下Android

1.Android系统内核基于什么操作系统?

答:

Android是一个完整的移动操作系统,利用Linux作为系统内核,实现了存储管理、设备管理、文件管理、进程管理、安全管理等操作系统的基本功能。

2.Google发布的基于Linux平台的开放源代码移动操作系统平台名称是什么?

答:

Android。

3.Android运行的虚拟机名称是什么?

虚拟机内运行的字节码文件后缀名是什么?

答:

Android运行的虚拟机不是Java虚拟机,而是经过改造的Dalvik虚拟机,在虚拟机内运行的并不是Java编译后的字节码,而是后缀名为dex内部格式文件。

4.Android采用什么软件架构?

整个系统包括哪几个层次?

答:

Android采用堆栈式软件架构,整个系统从底层操作系统到顶层核心应用在内分为5个层次:

Linux内核、Android运行环境(AndroidRuntime)、库集合(Libraries)、应用框架(ApplicationFramework)、应用(Application)。

5.请自行上网搜集目前三大主流移动操作系统名称及所属公司、技术特点、首次发布时间、目前最新版本号,并根据你的了解分析这几个移动操作系统各自的市场前景,面临的挑战和机遇。

答:

(本题为开放式探讨题,无标准答案,要求学生搜索资料、有理有据、观点明确即可。

第2章搭建Android应用开发环境

1.Android开发组件主要包括哪三部分?

答:

AndroidSDK、AndroidSDKTools和AndroidSDKPlatform-tools。

2.Android提供的专门用于EclipseIDE开发环境可以让AndroidSDK集成到Eclipse环境中的插件名称?

答:

ADT或AndroidDevelopmentTools。

3.请根据下图中Android工程目录结构,回答以下问题:

(1)应用项目名称?

(2)各文件夹名称及功能?

(3)包名称、主程序文件名及类名?

(4)Android应用可以打包成什么格式文件进行发布?

在工作空间的哪个目录中可以找到这个文件?

图中这个文件名称是什么?

(5)Android应用项目配置清单文件名称是什么?

答:

(1)chapter2

(2)src:

存放源文件

gen:

开发环境自动生成的文件,其中包含R.java文件,注意此文件会自动更新,不要去直接修改

AndroidX.X.X:

对应“X.X.X”版本号的AndroidPlatform的类库:

android.jar。

res:

资源文件夹,在Android中除了Java代码外,其他一切均可看作资源,包括图标、图像、常量定义等。

该文件夹下存在多个子文件夹

layout:

保存界面的布局文件

values:

保存常量信息

drawable:

分成几个子文件夹,分别保存不同分辨率的图像,以便兼容不同平台

(3)包名称:

cn.edu.jssvc.ced.

主程序文件名:

main.java

类名:

main

(4)Android应用可以打包成apk格式文件进行发布,在bin文件夹下。

chapter2.apk

(5)AndroidMainfest.xml。

4.AndroidSDK提供了哪两种应用测试方式?

其提供的模拟器英文名称是什么?

分别请提供这种测试方式的截图。

答:

(1)AndroidSDK提供了虚拟设备测试应用和真实设备测试应用两种方式;

(2)进行虚拟设备测试的模拟器称为AVD(AndroidVirtualDevice);

(3)截图:

略。

5.搭建基于Eclipse的Android应用开发环境需要哪些软件及步骤?

答:

(1)安装JDK(JavaDevelopmentKit);

(2)安装Eclipse;

(3)安装AndroidSDK;

(4)在Eclipse中安装ADT(或AndroidDevelopmentTools)插件。

6.Android开发环境中什么组件可以为开发人员提供如测试屏幕截图、进程查看、堆信息、LogCat、广播状态信息、模拟电话呼叫、接收SMS、虚拟地理坐标等功能支持来调试Android应用?

请提供截图。

答:

DDMS(DalvikDebugMonitorService)

截图:

略。

第3章Activity组件

1.什么是Activity?

主要功能是什么?

答:

Activity是一个独立的可以与用户交互的Android应用组件

功能:

作为应用程序框架动态加载各种用户界面视图,实现底层消息传递等,它是一个功能强大的界面管理者,负责调度各种界面视图,实现Android应用与用户之间的交互。

2.请你参照教材3.2节步骤,并按以下要求创建一个Activity,说明创建过程步骤,并配以相应截图。

(1)应用项目及Activity名称为:

学生本人姓名全拼;

(2)Layout为系统默认。

答:

3.根据下面Android应用的配置清单文件内容回答以下问题。

(1)该应用的包名是什么?

(2)该应用能运行的AndroidSDK最低版本号是多少?

(3)该应用中Actitity主类名称是什么?

答:

(1)包名:

cn.edu.jssvc.ced

(2)10

(3)main

4.请参考3.4节中程序3-3说明Android应用开发中回调方法有何特点?

答:

回调方法有以下特点:

(1)接受Androi操作系统发出的事件消息,由事件消息触发而被调用;

(2)开发者可以根据应用需要在自定义的类中重载并实现回调方法。

5.Android回调方法与Activity生命周期有何关系?

答:

1)Android为Activity生命周期设计了若干个阶段,每个阶段Android操作系统都会向Activity发出相应的事件消息,触发Activity中对应的回调方法;

2)Activity回调方法的名称是系统事先规定的,否则Android系统无法知道回调方法名称,也就无法发其发送事件消息,更不能触发回调方法被调用;

3)尽管系统会按事先设计的生命周期中每个阶段向Activity发送事件消息,但开发者可以根据实际需要选择实现哪些回调方法,并不要求开发者实现所有回调方法。

6.参考3.4节中程序3-3说明Activity生命周期中onCreate()回调方法有什么特点?

答:

(1)onCreate()回调方法是Activity实例被启动时调用的第一个方法,通常作为应用程序的入口点;

(2)Activity实例创建后只要仍然在内存的Activity管理栈没有被销毁,即使暂停运行后再再次启动,onCreate()方法也不会被再次回调,此时会回调Activty生命周期中的onStart()方法,只有当Activity再次实例化时onCreate()才会被回调。

7.参照3.4节中程序3-3,掌握Activity生命周期中下列回调方法的调用时刻:

onCreate()、onStart()、onResume()、onPause()、onStop()、onDestroy()

提示:

通过观察LogCat窗口中Log.i()方法输出信息出现的先后顺序来掌握对应方法的回调时序,要求提供对LogCat窗口截图。

答:

8.Android如何管理Activity?

答:

(1)Android通过栈的方式管理Activity;

(2)Activity的实例的状态决定它在栈中的位置,处于前台的Activity总是在栈的顶层,当前台的Activity因为异常或其他原因被销毁时,处于栈下一层的Activity的Activity将上升到顶层并被激活。

当新的Activity被启动后将进入栈的顶层,而原来在顶层的Activity则被压到下一层。

栈顶层的Activity处于活动状态,其他的Activity都有可能在系统内存不足时被回收(即被销毁),以便释放系统内存。

(3)Android提供的标准返回按钮操作时会把栈顶层的Activity销毁,让位于下一层处于暂停或停止状态的Activity上升到栈顶,从而回到活动状态,成为当前正在运行的应用。

9.请逐行注释下面程序片断,并说明其功能。

staticfinalStringActivity_ID="First";

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

Log.i(Activity_ID,"onCreatehasbeencalled");

Buttonfinish=(Button)findViewById(R.id.testfinish);

finish.setOnClickListener(newOnClickListener(){

publicvoidonClick(Viewv){

finish();//退出activity

}

});

}

答:

(1)注释

//定义字符串常量值

staticfinalStringActivity_ID="First";

//表示覆写父类方法的宏

@Override

publicvoidonCreate(BundlesavedInstanceState){//类对象创建时回调方法

//调用超类同名方法,完成由超类预先定义的功能

super.onCreate(savedInstanceState);

//加载界面布局文件main.xml

setContentView(R.layout.main);

//调用Log类的i方法输出调试信息

Log.i(Activity_ID,"onCreatehasbeencalled");

//从布局资源中获得id为testfinish按钮组件的引用并保存到finish对象中

Buttonfinish=(Button)findViewById(R.id.testfinish);

//为按钮设置点击事件监听器

finish.setOnClickListener(newOnClickListener(){//创建匿名点击事件对象

//实现点击事件处理方法

publicvoidonClick(Viewv){

finish();//退出activity

}

});

}

(2)功能:

Activity的加载回调方法onCreate(),加载界面布局文件,从界面中获取按钮视图对象,并为按钮设置点击监听方法,点击后退出运行。

第4章界面布局

1.Android应用界面中UI(UserInterface)组件间有严格的层次关系,有哪两种类型的视图组件?

答:

有两种类型的组件:

①ViewGroup:

相当于容器可以包含其他UI组件,如各种Layou组件。

②View:

不能包含其他组件,代表具体控件,如文本输入框、按钮等。

2.Android定义用户界面有哪两种方式?

答:

⑴用代码动态创建,通过调用方法定义组件属性和布局参数。

⑵通过XML文件声明界面布局。

3.Android程序设计中用XML文档定义布局有何优点?

答:

①实现应用的表现层与逻辑层分离,即描述界面的表现层与描述程序运行的逻辑层分别由XML文件和程序代码文件定义,使得代码简洁且易于维护。

②方便了用户界面适应不同的硬件环境,将不同运行环境中对应的布局信息定义在不同的XML文件中,让Android根据运行环境灵活切换到合适的用户界面布局信息。

4.什么是布局属性?

答:

Android界面布局文件中,对于布局节点(即能嵌套其他子节点的节点)有一类常用属性,统一以“layout_”开头,称为布局属性,这些属性决定于View或ViewGroup组件在界面中的位置、方向和大小等属性。

5.LayoutParams类有什么功能?

答:

Android应用在开发时可以通过XML文档描述界面布局,也可以直接通过Java代码设计界面布局,LayoutParams是ViewGroup组件的内置类,提供通过编程方式访问与布局相关的属性。

6.什么是LinearLayout?

答:

LinearLayout是一种应用界面视图组件布局方式,它的orientation属性可以选择水平或垂直方向,根据这个排列方向属性,将所有视图组件在水平或垂直方向排列成一行或一列。

7.什么是TableLayout?

答:

TableLayout是一种应用界面视图组件布局方式,以类似于表格的行列形式排列视图组件,每行为一个TableRow对象。

8.什么是RelativeLayout?

答:

RelativeLayout是一种应用界面视图组件布局方式,根据视图组件之间相对位置关系作为布局参照进行布局。

9.什么是FrameLayout?

答:

FrameLayout

RelativeLayout是一种应用界面视图组件布局方式,它将布局中的视图组件以层叠方式显示,即第一个添加到布局中的组件在最底层,最后一个添加到最上层,上层的组件会覆盖下层的组件,这种布局方式类似于堆栈。

10.请根据下面Layout的XML文档内容回答以下问题:

android="

xmlns:

tools="

android:

id="@+id/relative_layout"

android:

layout_width="match_parent"

android:

layout_height="match_parent">

android:

id="@+id/textView1"

android:

layout_width="match_parent"

android:

layout_height="wrap_content"

android:

layout_alignParentLeft="true"

android:

layout_alignParentTop="true"

android:

text="@string/hello_world"

tools:

context=".Main"/>

android:

id="@+id/button1"

android:

layout_width="wrap_content"

android:

layout_height="wrap_content"

android:

layout_below="@+id/textView1"

android:

layout_centerHorizontal="true"

android:

layout_marginTop="36dp"

android:

text="确定"/>

(1)布局类型是什么?

(2)界面中有哪几种组件?

对应的id是什么?

(3)分别说出TextView元素中以下属性含义是什么:

android:

id="@+id/textView1"

android:

layout_width="match_parent"

android:

layout_height="wrap_content"

android:

text="@string/hello_world

(4)分别说出Button元素中以下属性含义是什么:

android:

layout_below="@+id/textView1"

android:

layout_centerHorizontal="true"

android:

layout_marginTop="36dp"

android:

text="确定"

答:

(1)RelativeLayout,即相对界面布局

(2)布局中有几个View组件?

请说出各个组件的名称、id?

2个View组件。

组件名称id

TextViewtextView1

Buttonbutton1

(3)

Android系统定义的TextView的id属性:

它的属性值是“@+id/textView1”,其中@表示资源引用,“+”表示通知Android系统新建此资源,id为textView1;

Android系统定义的TextView的宽度属性:

View组件填充匹配父节点组件宽度;

Android系统定义的TextView的高度属性:

View组件填充匹配父节点组件高度;

Android系统定义的TextView的文本内容:

引用String资源中名字为hello_world的内容。

(4)分别说出Button元素中以下属性含义是什么:

android:

layout_below="@+id/textView1":

按钮组件在id为textView1组件下方

android:

layout_centerHorizontal="true":

按钮在Layout中水平居中

android:

layout_marginTop="36dp":

与上方组件边距值为36dp;

android:

text="确定":

Button所显示的文本为“确定”

11.现有名为relative.xml的布局文档,请根据下面Activity的onCreate()方法中注释提示,在空白划线上填写相应代码补充完整程序。

publicclassChapter4_RelativeLayoutActivityextendsActivity{

@Override

publicvoidonCreate(BundlesavedInstanceState){

//调用父类中onCreate()方法

(1)______________________________________________

//加载布局文档

(2)_____________________________________________

}

}

答:

(1)super.onCreate(savedInstanceState);

(2)setContentView(R.layout.relative)

12.请说明以下组件布局尺寸的度量单位含义:

(1)px:

(2)in

(3)mm

(4)pt:

(5)dp或dip:

(6)sp:

(7)dpi:

答:

刻度是组件布局尺寸的度量单位,有以下几种:

px(Pixels,像素):

对应屏幕实际像素点

in(Inches,英寸):

屏幕物理长度单位

mm(Millimeters,毫米):

屏幕物理长度单位

pt(Points):

物理长度单位,1/72英寸

dp或dip:

逻辑像素长度单位,在160dpi屏幕上,1dp=1px=1/160英寸

sp:

可以根据用户字体大小首选项缩放的逻辑像素单位

dpi:

(dotperinch):

英寸像素值,通常比较屏幕分辨率

13.请根据以下布局文档实现界面,并提供你运行后的界面截图,注意需在界面中输入你的姓名。

android="

xmlns:

tools="

android:

id="@+id/LinearLayout1"

android:

layout_width="fill_parent"

android:

layout_height="match_parent"

android:

orientation="vertical">

android:

layout_width="fill_parent"

android:

layout_height="wrap_content"/>

android:

layout_width="fill_parent"

android:

layout_height="wrap_content"

android:

layout_gravity="right"

android:

orientation="horizontal">

android:

id="@+id/button1"

android:

layout_width="wrap_content"

android:

layout_height="wrap_content"

android:

text="确定"/>

android:

id="@+id/button2"

android:

layout_width="wrap_content"

android:

layout_height="wrap_content"

android:

text="取消"/>

答:

第5章资源管理

1.在Android应用中提供程序使用的字符串、菜单、图像、声音、视频等信息内容称为什么?

答:

Resource(资源)

2.Eclipsek中开发Android应用时,工程中下列资源分别存放在什么文件夹中?

(1)String

(2)Color

(3)Drawable

(4)Layout

(5)Menu

(6)Raw

(7)XML

(8)Dimension:

(9)Style:

答:

(1)String:

res/values

(2)Color:

res/values

(3)Drawable:

res/drawable

(4)Layout:

res/layout

(5)Menu:

res/menu

(6)Raw:

res/raw

(7)XML:

res

(8)Dimension:

res/values

(9)Style:

res/values

3.Android应用中的所有资源都将被编译成什么形式存放在Andoid应用中?

答:

Android应用中的所有资源都将被编译成二进制形式存放在Andoid应用中,资源在程序中引用时实际上就是通过这个独一无二的int型ID加载资源的。

4.为了在Java代码中引用资源对象,需要将资源编译后自动产生的ID保存在gen目录中什么文件中?

(请说出完整的文件名。

)在这个文件中通过什么语句实现资源名称与ID号的挂钩?

答:

这个将资源编译成ID的过程是由ADT自动在工程的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1