《Android移动应用基础教程》_习题答案_第1页
《Android移动应用基础教程》_习题答案_第2页
《Android移动应用基础教程》_习题答案_第3页
《Android移动应用基础教程》_习题答案_第4页
《Android移动应用基础教程》_习题答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、Android移动应用基础教程习题答案第1章 Android基础入门一、 填空题1、 Linux、操作系统2、 应用程序层、应用程序框架层、核心类库、Linux内核3、 adb start-server4、 java代码文件5、 打包成.apk文件二、 判断题1、× 2、× 3、4、×5、三、 选择题1、D 2、ABC 3、B4、C5、A 四、简答题1、Android体系结构总共包含四层,分别是:l 应用程序层:设备上安装的软件应用都属于这一层l 应用程序框架层:包含应用APIl 核心类库:包含系统库和运行环境,系统库包含了底层C代码;运行环境包含了Java的核心

2、库和Dalvik虚拟机l Linux内核:提供Android的底层驱动。2、SDK包含了Android的API源代码、各种工具、示例工程、用到的各种资源模板等。第2章 Android UI开发一、 填空题1、 RelativeLayout、LinearLayout、TableLayout、GirdLayout、FrameLayout、AbsoluteLayout2、 android:layout_alignParentLeft3、 水平、竖直4、 RelativeLayout5、 显示全部信息、显示调试信息、显示一般信息、显示警告信息、显示错误信息二、 判断题1、2、3、×4、5、&

3、#215;三、 选择题1、D2、B3、C4、D5、B四、 简答题1、使用Toast可以直接调用Tosast的静态方法:Toast.makeText(this, text, duration).show();也可以创建出Toast对象,如:Toast toast = new Toast(this);toast.setText("提示信息");toast.show();2、一共有六种布局,它们的作用分别是:l RelativeLayout:相对于其他控件或者容器决定控件的位置;l LinearLayout:使控件以竖直或者水平方向排列;l TableLayout:使控件以表格形

4、式排列;l GirdLayout:能使控件交错显示,能够避免因布局嵌套对设备性能的影响,更利于自由布局的开发;l FrameLayout:使控件按照创建顺序在屏幕的左上角重叠显示;l AbsoluteLayout:通过绝对的坐标控制控件摆放的位置。第3章 Activity一、 填空题1、 运行状态、暂停状态、停止状态2、 standard、singleTop、singleTask、singleInstance3、 隐式Intent、显示Intent4、 onRestart()5、 setResult()二、 判断题1、2、×3、4、×5、三、 选择题1、A2、D3、D4、C

5、5、C四、简答题1、四种启动模式分别是:l Standard:每当启动一个新的Activity,它就会进入任务栈,并处于栈顶的位置,对于使用standard模式的Activity,系统不会判断该Activity在栈中是否存在,每次启动都会创建一个新的实例。l SingleTop:与standard类似,不同的是,当启动的Activity已经位于栈顶时,则直接使用它不创建新的实例。如果启动的Activity没有位于栈顶时,则创建一个新的实例位于栈顶。l SingleTask:创建的Activity只存在一个实例。已经存在则直接使用该实例,并将当前Activity之上的所有Activity出栈,如

6、果没有发现则创建一个新的实例。l singleInstance:启动一个新的任务栈管理Activity2、Activity三种状态分别是:l 运行状态:该状态下可以对界面进行操作l 暂停状态:界面可见但不具有焦点无法点击l 停止状态:界面不可见,一般在停止状态时保存数据以防止程序被系统强制杀死。第4章 数据存储一、 填空题1、 可保持或传输2、 内存、SD卡3、 DOM、SAX、PULL4、 配置参数5、 文件、Sharedpreferences、Sqlite、网络、ContentProvider二、 判断题1、2、 3、× 4、× 5、三、 选择题1、C2、D3、D4、A

7、BD 5、C四、简答题1、五种存储方式各自的特点分别是:l 文件存储:可以存储较大文件,以IO流形式传输数据。l Sqlite:占用内存小,所有文件都存放在单一文件中。l 网络:通过网络将数据传输到服务器存储,避免了客户端的安全隐患。l Sharedpreference:使用方便,可以存储配置信息,以键值对的形式存于内存中l ContentProvider:提供自身暴漏的数据给第三方应用使用,统一了数据访问格式,以数据库形式保存数据。2、使用Sharedpreference储存数据时因为它本身没有写文件的功能,因此需要使用Editor对象将数据存入内存,比如:SharedPreferences

8、 sp = getSharedPreferences("config", 0);Editor editor = sp.edit();editor.putString("a", "a");mit();第5章 SQLite数据库一、 填空题1、 BaseAdapter、SimpleAdapter、ArrayAdapter2、 SQLiteOpenHelper3、 onCreate()、onUpgrade()4、 Cursor、close()5、 Id二、 判断题1、× 2、× 3、 4、× 5、×三

9、、 选择题1、AC2、B3、B4、C5、B四、简答题1、首先创建一个类继承SQLiteOpenHelper,重写onCreate()方法并在该方法中创建表,使用创建出的SQLiteOpenHelper的子类对象的getWritableDatabase()方法获得一个可读写的数据库对象。2、四个抽象方法分别是:l getCount:得到Item的总数l getItem:根据position得到某个Item的对象l getItemId:根据position得到某个Item的idl getView:得到相应position对应的Item视图,position当前Item的位置,convertView

10、复用的View对象。第6章 内容提供者一、 填空题1、 UriMatcher2、 onChange()3、 insert、delete、update、query4、 保存、检索5、 ContentResolver二、 判断题1、× 2、 3、 4、× 5、三、 选择题1、AC 2、C3、ACD4、ABD5、C四、简答题1、通过ContentProvider共享数据统一了数据访问方式,使用起来更规范,通过数据库存储并指定了URI,只有通过特定URI才能访问数据,使数据更安全。2、ContentProvider可以共享自己的数据给外部应用访问,要访问ContentProvide

11、r暴漏的数据就要用到ContentResolver。而ContentObserver就相当于中间人的角色,它可以事实监听ContentProvider的数据是否发生变化,如果发生变化就会触发onChange()方法,Contentresolver可以在onChange()方法中查询的哪些数据发生了变化再对数据进行操作。第7章 广播接收者一、 填空题1、 receiver 2、 abortBroadcast()3、 有序广播、无序广播4、 registerReceiver、unregisterReceiver5、 sendOrderedBroadcast();二、 判断题1、×

12、; 2、 3、× 4、× 5、×三、 选择题1、A2、AC3、B4、C5、B四、简答题1、 注册广播有两种方式。l 非常驻型广播:这种广播依赖于注册广播的组件的生命周期,例如,在Activity中注册广播接收者,当Activity销毁后广播也随之被移除。l 常驻型广播:当应用程序关闭后,如果接收到其他应用程序发出的广播,那么该程序会自动重新启动。但是4.0以上的系统中如果安装了应用但是没有打开过,当有广播发出时应用也接收不到广播信息。2、 拨打电话:<uses-permission android:name="android.permission.

13、CALL_PHONE" />发送短信:<uses-permission android:name="android.permission.SEND_SMS" />设备开机: <uses-permission android:name=android.permission.RECEIVE_BOOT_COMPLETED />电池电量低:<action android:name="ent.action.ACTION_BATTERY_LOW"/>第8章 服务一

14、、 填空题1、 Service2、 onBind()3、 <service>4、 startService()、bindService()”5、 AIDL二、 判断题1、× 2、× 3、× 4、 5、×三、 选择题1、D 2、ABC 3、AC 4、AC 5、BD四、简答题1、使用AIDL接口实现通信的步骤如下:1) 在需要被调用的服务的项目中创建AIDL接口;2) 创建相应的服务3) 创建第二个项目用于调用服务。将服务中的aidl接口拷贝到第二个项目中,包名要和服务中的包名一致。2、服务两种启动方式,分别是:l Start方式启动:服务与调用

15、者没有绝对关联,当调用者关闭后服务还会一直在后台运行。l Bind方式启动:服务与调用者的生命周期所关联,当调用者关闭时,服务也会关闭。第9章 网络编程一、 填空题1、 Socket通信、HTTP通信、URL通信、WebView。2、 HTTP请求3、 HttpURLConnection、HttpClient4、 GET、POST5、 线程间通信二、 判断题1、 2、× 3、 4、× 5、三、 选择题1、A 2、D 3、C 4、D 5、B四、简答题1、使用HttpClient访问网络的步骤如下:1) 创建HttpClient对象;2) 指定访问网络的方式,创建一个HttpP

16、ost对象或者HttpGet对象;3) 如果需要发送请求参数,可调用HttpGet、HttpPost都具有的setParams()方法。对于HttpPost对象而言,也可调用setEntity()方法来设置请求参数;4) 调用HttpClient对象的execute()方法访问网络,并获取HttpResponse对象;5) 调用HttpResponse.getEntity()方法获取HttpEntity对象,该对象包装了服务器的响应内容。也就是我们所请求的数据。2、Handler机制四个关键对象的作用如下:1) MessageMessage是在线程之间传递的消息,它可以在内部携带少量的信息,用

17、于在不同线程之间交换数据。Message的what字段可以用来携带一些整型数据,obj字段可以用来携带一个Object对象。2) HandlerHandler顾名思义就是处理者的意思,它主要用于发送消息和处理消息。一般使用Handelr对象的sendMessage()方法发送消息,发出的消息经过一系列的辗转处理后,最终会传递到Handler对象的handlerMessage()方法中。3) MessageQueueMessageQueue是消息队列的意思,它主要用来存放通过Handler发送的消息。通过Handler发送的消息会存在MessageQueue中等待处理。每个线程中只会有一个Mes

18、sageQueue对象。4) LooperLooper是每个线程中的MessageQueue的管家。调用Looper的loop()方法后,就会进入到一个无线循环中。然后每等发现MessageQueue中存在一条消息,就会将它取出,并传递到Handler的HandlerMessage()方法中。此外每个线程也只会有一个Looper对象。在主线程中创建Handler对象时,系统已经为我们创建了Looper对象,所以不用手动创建Looper对象,而在子线程中Handler对象,我们需要调用Looper.loop()方法开启消息循环。第10章 高级编程一、 填空题1、 Matrix2、 SensorManager 3、 Bitmap、BitmapFactory、Paint、Canvas4、 onAttach()、onCreateView()、onActivityCreate()、onDestroyView()、onDetach()5、 Frame逐帧动画二、判断题1、× 2、× 3、 4、 5、×三、选择题

温馨提示

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

评论

0/150

提交评论