作业习题Android系统应用开发Android程序设计基础版第123章Word文件下载.docx
《作业习题Android系统应用开发Android程序设计基础版第123章Word文件下载.docx》由会员分享,可在线阅读,更多相关《作业习题Android系统应用开发Android程序设计基础版第123章Word文件下载.docx(160页珍藏版)》请在冰豆网上搜索。
![作业习题Android系统应用开发Android程序设计基础版第123章Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-10/9/248c4c9d-8e00-4b50-9988-2eae929f10d0/248c4c9d-8e00-4b50-9988-2eae929f10d01.gif)
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文件,注意此文件会自动更新,不要去直接修改
AndroidPlatform的类库:
android.jar。
res:
资源文件夹,在Android中除了Java代码外,其他一切均可看作资源,包括图标、图像、常量定义等。
该文件夹下存在多个子文件夹
layout:
保存界面的布局文件
values:
保存常量信息
drawable:
分成几个子文件夹,分别保存不同分辨率的图像,以便兼容不同平台
(3)包名称:
主程序文件名:
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)包名:
(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(;
Log.i(Activity_ID,"
onCreatehasbeencalled"
);
Buttonfinish=(Button)findViewById(;
finish.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewv){
finish();
//退出activity
}
});
}
(1)注释
//定义字符串常量值
//表示覆写父类方法的宏
publicvoidonCreate(BundlesavedInstanceState){//类对象创建时回调方法
//调用超类同名方法,完成由超类预先定义的功能
//加载界面布局文件main.xml
//调用Log类的i方法输出调试信息
//从布局资源中获得id为testfinish按钮组件的引用并保存到finish对象中
//为按钮设置点击事件监听器
finish.setOnClickListener(newOnClickListener(){//创建匿名点击事件对象
//实现点击事件处理方法
//退出activity
(2)功能:
Activity的加载回调方法onCreate(),加载界面布局文件,从界面中获取按钮视图对象,并为按钮设置点击监听方法,点击后退出运行。
第4章界面布局
1.Android应用界面中UI(UserInterface)组件间有严格的层次关系,有哪两种类型的视图组件?
有两种类型的组件:
①ViewGroup:
相当于容器可以包含其他UI组件,如各种Layou组件。
②View:
不能包含其他组件,代表具体控件,如文本输入框、按钮等。
2.Android定义用户界面有哪两种方式?
⑴用代码动态创建,通过调用方法定义组件属性和布局参数。
⑵通过XML文件声明界面布局。
3.Android程序设计中用XML文档定义布局有何优点?
①实现应用的表现层与逻辑层分离,即描述界面的表现层与描述程序运行的逻辑层分别由XML文件和程序代码文件定义,使得代码简洁且易于维护。
②方便了用户界面