作业习题Android系统应用开发Android程序设计基础版第123章概要.docx
- 文档编号:3858533
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:212
- 大小:317.22KB
作业习题Android系统应用开发Android程序设计基础版第123章概要.docx
《作业习题Android系统应用开发Android程序设计基础版第123章概要.docx》由会员分享,可在线阅读,更多相关《作业习题Android系统应用开发Android程序设计基础版第123章概要.docx(212页珍藏版)》请在冰点文库上搜索。
作业习题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"/>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 作业 习题 Android 系统 应用 开发 程序设计 基础 123 概要