中国大学移动应用开发技术期末答案(慕课2023完整答案)

分类: 机械问答发布于:2024-06-02 12:57:17ė84848次浏览622条评论

中国大学移动应用开发技术期末答案(慕课2023完整答案)

1.1Android简介

1、中国【单选题】Dalvik虚拟机是大学答案答案基于()的架构。
A、移动应用
B、技术堆
C、期末寄存器
D、慕课存储器

2、完整【单选题】关于Dalvik虚拟机,中国说法错误的大学答案答案是( ).
A、基于寄存器的移动应用架构
B、基于栈的技术架构
C、加载的期末是.dex格式的数据
D、在linux操作系统上运行

3、慕课【判断题】第四代移动通讯技术(4G)包括TD-LTE和FDD-LTE两种制式。完整

4、中国【判断题】随着智能手机的发展,移动通信技术也在不断地升级,目前应用最广泛的是4G

5、【判断题】Android系统采用分层架构,由高到低分为4层,依次是应用程序层、应用程序框架层、核心类库和Linux内核。

6、【判断题】Android是Google公司基于Linux平台开发的手机及平板电脑操作系统

7、【判断题】Dalvik虚拟机是在linux操作系统上运行.

8、【判断题】Android系统最初由安迪·鲁宾等人开发制作。

9、【判断题】Android是Google公司基于Linux平台开发的手机及平板电脑操作系统。

10、【判断题】Android底层是基于linux操作系统的。

11、【判断题】所有的Android应用程序在底层对应同一个Dalvik虚拟机实例,其代码在虚拟机的解析得以执行。

1.2Android开发环境搭建

1、【单选题】在下列选项中, 要通过adb命令查看已连接的设备的是( )。
A、adb devices
B、adb show devices
C、adb start devices
D、adb have devices

2、【单选题】不属于ADT Bundle三个重要组成部分的是()
A、Eclipse
B、SDK
C、SDK Manager.exe
D、ADB

3、【单选题】在下列选项中, 关于DDMS中Emulator Control功能的说法错误的是()。
A、模拟拨打电话
B、模拟发送短信
C、模拟发送经纬度信息
D、模拟电话信号

4、【单选题】在下列选项中,不包含在ADT Bundle工具包中的是( )。
A、Eclipse
B、SDK
C、SDK Manager
D、JDK

5、【单选题】ADB的常见指令中,用于卸载应用程序的是()
A、adb logcat
B、adb shell
C、adb uninstall
D、adb kill-server

6、【单选题】下列不属于DDMS工具用途的是()
A、查看进程的堆栈使用情况
B、跟踪对象的内存分配
C、操作仿真器或设备的文件系统
D、查看所有安装的插件

7、【判断题】ADT Bundle工具包中包括SDK.

8、【判断题】adb shell这个命令的意思是挂载到linux的空间。

9、【判断题】ADB的常见指令中,用于查看日志的是adb logcat

10、【判断题】DDMS工具可以查看进程的堆栈使用情况,检查线程信息

11、【判断题】ADT Bundle三个重要组成部分是eclipse、sdk和SDKManager.exe

12、【判断题】Android程序中,Log.w()用于输出警告级别的日志信息。

1.3.1HelloWorld程序

1、【单选题】创建程序时,填写的Theme是()
A、应用名称
B、程序UI所使用的主题
C、项目的包名
D、项目名称

2、【单选题】在创建Android工程时,填写的Minimum Required SDK是()。
A、匹配的目标版本
B、程序最低兼容的版本
C、使用哪个SDK版本编译程序
D、SDK的主题

3、【单选题】创建程序时,填写的Compile With是()
A、应用名称
B、项目名称
C、项目的包名
D、程序将使用哪个版本的SDK进行编译

4、【判断题】在创建Android工程时,填写的Package Name表示工程的名称。

5、【判断题】创建程序时,填写的Package Name表示项目名称

6、【判断题】创建程序时,填写的Minimum Required SDK是指最匹配的目标版本

7、【判断题】在创建Android工程时,填写的Compile With是指使用哪个版本的SDK编译程序。

1.3.2Android程序结构

1、【单选题】Android项目中的布局文件放在哪个目录下( )
A、res/layout
B、res/value
C、assets
D、res/drawable

2、【单选题】Android 工程中存放各种程序资源的目录是()
A、src
B、gen
C、res
D、bin

3、【单选题】在下列选项中,关于Android工程中的assets目录的说法正确的是( )
A、存放使用到的图片资源
B、主要存放一些文件资源,这些文件会被原封不动的打包到APK文件中
C、存放字符串、颜色、数组等常量数据
D、存放与UI相应的布局文件

4、【判断题】在Android工程中,assets资源目录下的资源文件不会在R.java自动生成ID。

5、【判断题】Android工程中的gen 目录下存放的文件是由Android开发工具自动生成的。

6、【判断题】Android 工程中AndroidManifest.xml文件是整个程序的配置文件

7、【判断题】Android 工程中gen目录是自动生成的,主要有一个R.java文件,该文件可手动修改

1.3.3Android程序打包过程

1、【单选题】Android安装包文件简称APK,其后缀名是()
A、.apk
B、.exe
C、.txt
D、.app

2、【单选题】Android 工程中()是混淆代码工具proguard的配置文件
A、src
B、gen
C、res
D、proguard-project.txt

3、【判断题】使用 Eclipse 的run as生成一个apk安装包采用的签名是Debug签名。

2.3.1相对布局

1、【单选题】在相对布局文件中,把控件与另外一个控件的下边使用的属性是()
A、layout_above
B、padding
C、layout_below
D、layout_margin

2、【单选题】在相对布局文件中,把控件显示在另外一个控件的右侧使用的属性是()
A、layout_toRightOf
B、layout_toLeftOf
C、layout_toStartOf
D、layout_toEndOf

3、【单选题】Android相对布局中,使控件相对父控件底部对齐使用的属性是()。
A、android:layout_alignParentBottom
B、android:layout_alignBottom
C、android:layout_alignBaseline
D、android:layout_alignParentTop

4、【单选题】Android相对布局中,要使A控件在B控件的下方,A控件需添加的属性是()
A、android:layout_above
B、android:layout_alignBaseline
C、android:layout_below
D、android:layout_alignBottom

5、【判断题】相对布局中的控件都是按照相对位置摆放的。

6、【判断题】Android UI开发中,相对布局通常有两种形式,一种是相对于容器而言的,一种是相对于控件而言的。

2.3.2线性布局

1、【单选题】在下列选项中,设置线性布局方向的属性是()
A、orientation
B、gravity
C、layout_gravity
D、padding

2、【单选题】Android UI开发中,设置线性布局为垂直显示需修改的属性的()
A、android:orientation="vertical"
B、android:orientation="horizontal"
C、android:layout_centerHorizontal="true"
D、android:layout_centerVertical="true"

3、【单选题】在线性布局文件中,把方向设置为水平方的属性是()
A、vertical
B、horizontal
C、fill_vertical
D、fill_horizontal

4、【判断题】在线性布局文件中,如果把方向设置为水平方向,控件会摆放在同一行。

5、【判断题】Android UI开发中,线性布局默认为水平显示。

2.3.3表格布局

1、【单选题】在TableLayout中,stretchColumns属性表示()
A、TableLayout的列数
B、TableLayout的行数
C、TableLayout最多能加入的列数
D、拉伸指定列填充满TableLayout

2、【单选题】Android UI开发中,TableLayout的stretchColumns属性表示()
A、TableLayout的列数
B、TableLayout的行数
C、TableLayout最多能加入的列数
D、拉伸指定列填充满TableLayout

3、【单选题】Android UI开发中,如果TableLayout的第一个TableRow有两个控件,第二个TableRow有三个控件,那这个TableLayout就有()列。
A、1
B、2
C、3
D、4

4、【单选题】在下列选项中,关于TableRow标签的说法正确的是()
A、在GridView里面表示一行
B、是五种布局的一种
C、是表格布局里面表示一行的标签
D、在listView里面表示一行

5、【判断题】TableLayout可以将视图按照行、列进行排列。

2.3.4网格布局

1、【单选题】Android UI开发中,如何设置GridLayout列数为4()。
A、android:columnCount="4"
B、android:layout_columnCount="4"
C、android:column="4"
D、android:stretchColumns="4"

2、【单选题】Android UI开发中,在GridLayout中如何设置某控件占3行()
A、android:layout_columnSpan="3"
B、android:layout_rowSpan="3"
C、android:rowSpan="3"
D、android:layout_column="3"

3、【单选题】在下列选项中,设置GridLayout中的某控件占3行的是()
A、android:rowSpan="3"
B、android:layout_rowSpan="3"
C、android:layout_columnSpan="3"
D、android:layout_column="3"

4、【单选题】在网格布局中,设置列数的属性是()
A、column
B、columnCount
C、layout_columnCount
D、stretchColumns

5、【判断题】Android中的网格布局使用GridLayout控件表示( )。

6、【判断题】Android UI开发中,利用网格布局实现了一个计算器,此程序可以运行在Android2.3的系统上。

7、【判断题】网格布局是从Android4.0版本新增的特性。

2.3.5帧布局

1、【单选题】Android UI开发中,常见的刮刮卡是通过()实现的
A、帧布局
B、线性布局
C、相对布局
D、表格布局

2、【单选题】Android UI开发中,帧布局中的子控件都是()对齐的。
A、右上角
B、左上角
C、左下角
D、右下角

3、【单选题】在帧布局中的子控件默认是()对齐的。
A、右上角
B、左上角
C、左下角
D、右下角

4、【单选题】在Android UI开发中,常见的刮刮卡是通过()实现的。
A、FrameLayout
B、LinearLayout
C、RelativeLayout
D、TableLayout

5、【判断题】帧布局在界面上是一帧一帧显示的,通常可以用于游戏开发中。

6、【判断题】帧布局在界面上是一帧一帧显示的。

2.3.6绝对布局

1、【单选题】绝对布局的标签名称是()
A、FrameLayout
B、LinearLayout
C、RelativeLayout
D、AbsoluteLayout

2、【单选题】放入绝对布局中的控件需要通过______两个属性指定其准确的坐标值
A、android:width和android:height
B、android:layout_width和android:layout_height
C、android:x和android:y
D、android:layout_x和android:layout_y

3、【判断题】理论上绝对布局可以完成任何的布局设计,且灵活性很大,所以开发中推荐使用绝对布局。

4、【判断题】绝对布局灵活性很大, 可以完成任何的布局设计,所以开发中推荐使用绝对布局。

2.3.7布局用户注册案例

1、【单选题】Android UI开发中,( )控件通常用于响应用户的点击事件。
A、EditText
B、TextView
C、Button
D、RadioButton

2、【单选题】在布局文件中,给Button指定单击事件响应方法的属性是()
A、onClick
B、hint
C、enabled
D、focusable

3、【单选题】在下列选项中,通常用于响应用户的点击事件的控件是()
A、TextView
B、EditText
C、RadioButton
D、Button

4、【判断题】TextView控件通常用于在界面上显示文字信息。

5、【判断题】Android UI开发中,文本框可以在界面上显示文字,通常作为提示信息展示。

2.4.1样式和主题的使用

1、【单选题】Android UI开发中,设置Activity的()属性可以使Activity显示为对话框样式
A、android:theme="@android:style/Theme.Dialog"
B、android:style="@android:style/Theme.Dialog"
C、android:theme="@android:theme/Theme.Dialog"
D、android:style="@android:theme/Theme.Dialog"

2、【单选题】在下列选项中,用于给Activity指定主题的属性是()
A、icon
B、label
C、theme
D、style

3、【单选题】在下列选项中,用于给控件指定主题的属性是()
A、icon
B、label
C、theme
D、style

4、【判断题】在Android UI开发中,通常情况下使用主题定义一个界面或者整个软件界面的风格,使用样式定义控件的风格。

5、【判断题】Android UI开发中,如果一个应用中使用了主题,同时应用下的View也使用了样式,那么当主题和样式中的属性发生冲突时,主题的优先级高于样式。

2.5国际化

1、【单选题】Android多语言支持加拿大需添加的目录是()。
A、values-en-rCA
B、values-en-CA
C、values-en-rHK
D、values-en-HK

2、【单选题】Android应用国际化时,在res目录下创建values文件夹的命名规则是()
A、语言代码-values-r国家代码
B、values-语言代码-r国家代码
C、国家代码-values-r 语言代码
D、values-r语言代码-国家代码

3、【判断题】国际化Internationalization这个单词的首字母“I”和尾字母“N”之间有18个字符,因此国际化被简称为I18N。

4、【判断题】在Android开发中,若让软件支持简体中文、美式英语两种环境,需要在res目录下新建的两个文件夹是values-zh-rCN和values-en-rUS。

2.6.1JUnit单元测试

1、【单选题】在进行JUnit测试时,首先需要在AndroidManifest.xml的节点下配置指令集()和在节点下配置函数库。
A、<instrumentations>
B、<instrumentation>
C、<package-verifier ></package>
D、<original-package ></original>

2、【单选题】在JUnit单元测试时,需要在AndroidManifest.xml的节点下配置的指令集节点是()
A、<instrumentation>
B、<instrumentations>
C、<package-verifier >
D、<original-package>

3、【单选题】在JUnit单元测试时,需要在AndroidManifest.xml的节点下配置函数库节点是()
A、<instrumentation>
B、<instrumentations>
C、< uses-library >
D、<original-package>

4、【判断题】JUnit实际上是一个测试框架,它是Android SDK1.6加入的自动化测试功能。

5、【判断题】JUnit单元测试从是Android SDK1.5加入的自动化测试功能。

6、【判断题】JUnit单元测试时,通常把测试类放到一个test包中,与项目的正式代码分开,避免混合在一起。

7、【判断题】JUnit单元测试既可以嵌入到项目中,也可以作为一个单独的项目,针对某个项目进行测试。

2.6.2LogCat的使用

1、【单选题】在下列选项中,关于LogCat输出级别从低到高的是()
A、Debug(D)、Verbose(V)、Warning(W)、Error(E)、Info(I)
B、Verbose(V)、Debug(D)、Warning(W)、Error(E)、Info(I)
C、Verbose(V)、Info(I)、Debug(D)、Warning(W)、Error(E)
D、Warning(W)、Debug(D)、Verbose(V)、Error(E)、Info(I)

2、【单选题】下列关于LogCat输出级别描述错误的是()。
A、Verbose(V):显示全部信息,黑色
B、Debug(D):显示调试信息,蓝色
C、Error(E):显示错误信息,红色
D、Warming(W):显示警告信息,绿色

3、【判断题】Android 中Log类的log.w输出的是警告级别的日志信息。

4、【判断题】在Eclipse中选择【Window】->【Show View】->【LogCat】即可打开LogCat控制台窗口。

5、【判断题】Android 中的Log类所输出的日志内容分为五个级别。

6、【判断题】Android 中的Log类所输出的日志内容分为五个级别,由低到高分别是Verbose、Debug、Info、Warming、Error。

2.6.3Toast的使用

1、【单选题】在下列选项中,表示Toast较短时间显示信息的是()。
A、Toast.LENGTH_LONG
B、Toast.LONG
C、Toast.LENGTH_SHORT
D、Toast.SHORT

2、【单选题】下列表示Toast较长时间显示的是()。
A、Toast.LENGTH_LONG
B、Toast.LONG
C、Toast.LENGTH_SHORT
D、Toast.SHORT

3、【判断题】Toast.makeText(context,text,time)必须在调用了show()方法后才能把信息显示出来。

4、【判断题】Android 代码中加入Toast.makeText(Context,Text,Time);即可显示Toast。

3.1.2Activity的创建

1、【单选题】Activity的布局文件放在哪个目录下()
A、res/layout
B、res/layouts
C、res/xml
D、res/values

2、【单选题】Activity通过()方法可以设置它的布局文件,并把视图显示在界面上。
A、setLayoutView()
B、setContentView()
C、setLayoutViews()
D、setContentViews()

3、【单选题】Activity通过()方法可以设置它的布局文件
A、setContentViews()
B、setContentView()
C、setLayoutView()
D、setLayoutViews()

4、【判断题】创建一个Activity必须继承自android.app.Activity或者其子类

5、【判断题】Activity可以不用在AndroidManifest.xml文件中注册就可以运行

6、【判断题】Activity不是Context的子类。

7、【判断题】Activity只有在AndroidManifest.xml文件中注册后才可以运行。

3.1.3Activity 生命周期

1、【单选题】Activity销毁时执行执行方法是()
A、onStart()
B、onResume()
C、onPause()
D、onDestroy()

2、【单选题】Activity获取焦点时执行方法是()
A、onStart()
B、onResume()
C、onPause()
D、onDestroy()

3、【判断题】当Activity处于运行状态时,Android会尽可能地保持它的运行,即使出现内存不足的情况,Android也会先杀死栈底部的Activity,来确保可见的Activity正常运行

4、【判断题】Activity必须在AndroidManifest.xml文件中注册才能运行。

3.1.4Activity存活案例

1、【单选题】Android使用()的方式来管理Activity的实例
A、任务栈
B、任务堆
C、队列
D、任务列

2、【单选题】在下列选项中, 最小化Activity的界面时执行的方法是()
A、onRestart、onResume、onDestroy
B、onCreate、onStart、onResume
C、onRestart、onStart 、onResume
D、onPause、onStop

3、【单选题】在下列选项中, 重新打开最小化的Activity界面时执行的方法是()
A、onRestart、onResume
B、onCreate、onStart
C、onRestart、onStart
D、OnPause、 onDestroy

4、【判断题】关闭Activity的界面时会执行onPause、onStop、onDestroy方法。

3.2.1Android下的任务栈

1、【单选题】Android采用()的方式来管理Activity的实例
A、任务栈
B、任务堆
C、队列
D、任务列

3.2.2Activity的4种启动模式

1、【单选题】当Activity的启动模式指定为(),每次启动该Activity时,系统首先会检查栈中是否存在该活动的实例,如果发现已经存在则直接使用该实例,并将当前Activity之上的所有Activity出栈,如果没有发现则创建一个新的实例
A、singleTask
B、singleTop
C、standard
D、singleInstance

2、【单选题】在下列选项中,用来设置Activity的启动模式的属性是()
A、android:launch
B、android:launchMode
C、android:launchMethod
D、android:launchProperty

3、【单选题】()启动模式与standard类似,不同的是,当启动的Activity已经位于栈顶时,则直接使用它不创建新的实例
A、singleTask
B、singleTop
C、singleTask和 singleTop
D、singleInstance

4、【单选题】()启动模式是指,每次启动该Activity时,系统会这个Activity的实例作为一个任务压入任务栈的栈顶,每次销毁一个Activity时,系统会从任务栈中把这个Activity实例对应的任务移除。
A、singleTask
B、singleTop
C、standard
D、singleInstance

5、【判断题】standard是Activity默认的启动模式,在不指定Activity启动模式的情况下,所有Activity使用的都是standard这种模式

3.3.2显式意图和隐式意图

1、【单选题】Intent intent = new Intent();intent.setAction("cn.itscast.xxx");startActivity(intent);采用的是()启动Activity
A、显示意图
B、隐式意图

2、【单选题】()是指在开启组件时,不需要直接指定目标组件的名称,而是通过指定一组动作、数据、类型等属性,让系统从清单文件中匹配指定的组件并开启它。
A、显示意图
B、隐式意图

3、【单选题】没有明确指定组件名的Intent称为()
A、显示意图
B、隐式意图

4、【单选题】开启当前应用中的Activity使用()
A、显示意图
B、隐式意图

5、【判断题】显示意图,即启动Activity时不需要指定Activity的名称。

3.3.3打开系统照相机案例

1、【单选题】启动系统相机使用的action是()
A、android.media.action.IMAGE_CAPTURE
B、android.media.action. IMAGES_CAPTURE
C、android.media.action. VIDEO_CAPTURE
D、android.media.action.VIDEOS_CAPTURE

2、【单选题】下列能打开系统相机的方法是()
A、显示意图
B、隐式意图

3、【判断题】启动系统相机使用的action是android.media.action.VIDEO_CAPTURE。

3.4.1数据传递方式

1、【单选题】下列选项中不能通过Intent传递的是()
A、“数据”
B、2
C、对象obj
D、实现Serializable接口的对象obj

2、【单选题】在下列选项中,不能使用Intent传递的数据类型是()
A、把大基本数据类型及其数组
B、Map
C、Parcelable
D、Serializable

3、【单选题】Android中Intent传递类对象时,该类对象需实现()或Parcelable接口
A、Copyings接口
B、Copying接口
C、Serializables接口
D、Serializable接口

4、【判断题】使用Intent传递数据时,可以使用putExtra()方法把参数封装到Intent中。

5、【判断题】使用Intent传递数据只需调用putExtra()方法将想要存储的数据存在Intent中即可

6、【判断题】Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象

7、【判断题】使用Intent不能传递Parcelable类型的对象。

3.4.2数据传递用户注册案例

1、【单选题】两个RadioButton要实现单选需要包裹在()中
A、RadioGroups
B、RadioGroup
C、RatingBar
D、RatingBars

2、【单选题】在下列选项中, 可以获得Intent中String类型参数的方法是()
A、getExtraString(string)
B、getStringExtra(string)
C、getStringPut(string)
D、getPutString(string)

3、【判断题】在用户注册案例中展示用户信息Activity可以通过getIntent()方法获取到Intent对象,然后通过该对象的getStringExtra()方法拿到输入的用户名

3.4.3回传数据

1、【单选题】在下列选项中,关于onActivityResult方法中的参数描述错误的是()
A、requestCode,表示在启动Activity时传递的请求码
B、resultCode,表示在返回数据时传入结果码
C、data,表示携带返回数据的Intent
D、data,表示启动Activity时传递的Intent

2、【单选题】在startActivityForResult方法表示请求码的参数是()
A、requestCode
B、resultCode
C、data
D、intent

3、【单选题】下列不是onActivityResult()方法参数的是()
A、requestCode
B、resultCode
C、data
D、result

4、【单选题】onActivityResult()方法有三个参数,其中()表示在返回数据时传入结果码
A、requestCode
B、resultCode
C、data
D、result

5、【判断题】当用startActivityForResult()启动activity B时,可以在onActivityResult()方法接收activity B回传的数据

6、【判断题】在目标Activity中,通常使用setResult方法设置返回数据。

3.4.4装备选择案例

1、【单选题】在下列选项中,设置ProgressBar的最大进度的方法是()
A、setMax()
B、setProgress()
C、setCurrentProgress ()
D、setTotalProgress()

2、【单选题】ProgressBar设置当前进度的方法是()
A、setMax()
B、setProgress()
C、getProgress()
D、setCurrentProgress()

3、【判断题】ProgressBar通常用于访问网络展示loading对话框以及下载文件时显示的进度。它有两种表现形式,一种是水平的,另一种是环形的

4、【判断题】ProgressBar有两种表现形式,一种是水平的,另一种是环形的。

4.1数据存储方式

1、【单选题】在下列选项中,Android中的五大存储数据方式不包括( )
A、文件
B、SQLite数据库
C、SharedPreferences
D、Map
E、网络

2、【多选题】Android中把数据可以存储到以下哪个目录( )。
A、C盘
B、SD卡目录
C、/data/data/包名下
D、D盘

3、【判断题】Android中的五大存储数据方式包括文件、SQLite数据库、SharedPreferences、contentProvider、网络。

4、【判断题】Android中数据存储方式只有一种。

4.2.1文件存储简介

1、【单选题】在Environment类中,用来获得SD根目录方法的是( )
A、getDataDirectory()
B、getExternalStorageDirectory()
C、getExternalStorageState()
D、getDownloadCacheDirectory()

2、【单选题】在下列选项中,SD卡的根目录是( )
A、/mnt
B、/mnt/sdcard
C、/data
D、/data/data

3、【多选题】Android中使用openFileOutput(String name,int mode)方法获取到文件输出流时, 第二个参数mode常用模式有( )。
A、MODE_PRIVATE
B、MODE_APPEND
C、MODE_WORLD_READABLE
D、MODE_WORLD_WRITEABLE

4、【判断题】Android中数据只能存储到sd卡上。

5、【判断题】在/data/data/包名/cache目录下可以cache软件的缓存数据,当清除缓存时数据就会删除

4.2.2存储用户信息案例

1、【单选题】在下列选项中,关于openFileInput()方法接收的参数,描述错误的是()
A、一个输入流对象
B、一个目录对象
C、/data/data/com.itheima.savetofile/目录下一个文件的名称
D、一个输出流对象

2、【单选题】在Activity中,可以得到/data/data/com.itheima.savetofile/info.txt路径的输入流的方法是 ()
A、openFileInput()
B、openFilesInput()
C、openFileOutput()
D、openFilesOutput()

3、【单选题】Android中判断CheckBox控件是否选中的方法是( )。
A、isLogin()
B、isBoolean()
C、onClick()
D、isChecked()

4、【判断题】Android中使用openFileOutput(String name,int mode)方法获取到文件输出流时, 第二个参数mode常用模式有4种。

5、【判断题】在openFileOutput()方法中,接收的第一个参数表示/data/data/com.itheima.savetofile/目录下的一个文件名,用于指定存储数据的文件。

4.3.1XML序列化

1、【单选题】Android中使用serializer对象生成xml 文档开头的方法是( )。
A、startDocument
B、startTag
C、endTag
D、endDocument

2、【单选题】在XmlSerializer的方法中,向xml文件中写一个开始标签的方法是()
A、startDocument
B、startTag
C、endTag
D、endDocument

3、【判断题】Android 中我们可以通过Xml.newSerializer( )方式获取xml序列化对象。

4、【判断题】序列化数据之前必须先初始化序列化器XmlSerializer。

4.3.2XML解析

1、【单选题】在XmlPullParser的方法中,获得标签体内容的方法是()
A、getName()
B、next()
C、nextText()
D、getEventType()

2、【单选题】在XmlPullParser的方法中,初始化解析器的方法是()
A、setInput()
B、setOutput()
C、getEventType()
D、setEventType()

3、【单选题】Android中使用xmlPullParser解析器解析xml,判断解析到文件末尾的方法是( )。
A、XmlPullParser.END_TAG
B、XmlPullParser.END_DOCUMENT
C、XmlPullParser.END_TAG_DOCUMENT
D、XmlPullParser.END_ATTRIBUTE

4、【单选题】Android中使用xmlPullParser解析器解析xml, 获取解析事件类型的方法是( )
A、getDocument()
B、getDocumentTag()
C、getEventType()
D、getAttribute()

5、【单选题】在下列选项中,不属于XmlPullParser的事件类型的是()
A、END_DOCUMENT
B、START_TAG
C、END_TAG
D、START_DOCUMENT
E、END_TEXT

6、【判断题】解析数据之前必须先初始化解析器器XmlPullParser

7、【判断题】Android 中xmlPullParser解析原理是基于事件进行解析。

4.4.1SharedPreferences的使用

1、【单选题】Android获取到SharedPreferences对象sp后,保存数据正确的逻辑是( )。
A、sp.edit();
B、sp.edit().putString(“name”,”zhangsan”).commit();
C、sp.edit().putString(“name”,”zhangsan”);
D、sp.edit().put(“name”,”zhangsan”).commit();

2、【单选题】在SharedPreferences的方法中,使用()方法可以得到一个编辑器Editor对象,然后通过这个Editor对象存储数据。
A、editor()
B、getEditor()
C、edit()
D、getEdit ()

3、【单选题】在SharedPreferences的方法中,用于获得String类型参数的方法是()
A、getString ()
B、getStringExtra()
C、getStringValue()
D、getValue()

4、【单选题】在Editor的方法中,用于存储String类型参数的方法是()
A、set()
B、setString()
C、put()
D、putString()

5、【单选题】Android中初始化SharedPreferences,以下正确的是( )。
A、SharedPreferences sp = new SharedPreferences();
B、SharedPreferences sp = SharedPreferences.getDefault();
C、SharedPreferences sp = SharedPreferences.Factory();
D、SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE);

6、【判断题】SharedPreferences是使用.properties文件存数数据的。

7、【判断题】Android 中获取到sp对象 SharedPreferences sp = new SharedPreferences();

4.4.2QQ登录案例

1、【单选题】sharedPreferences读取数据时,其中有一个方法是getString(key, defValue),该方法中的defValue参数是什么( )。
A、key所对应的value值
B、无做用
C、是当用getString得到数据时如果没有得到key值所对应的value值,就给定一个默认的值。
D、key值

2、【单选题】以下哪个选项不属于openFileOutput方法与 getSharedPreferences方法的文件操作模式参数( )。
A、Context.MODE_PRIVATE;
B、Context.MODE_APPEND;
C、Context.MODE_WORLD_READABLE;
D、Context.MODE_WORLD;

3、【单选题】在QQ登录案例中,显示上次用户输入的账号密码的代码,需要写在()方法中。
A、onStart()
B、onCreate()
C、onDestroy()
D、onStop()

4、【单选题】在QQ登录案例中,获得保存在SharedPreferences中的账号密码,调用的方法是()
A、getString ()
B、getStringExtra ()
C、getStringValue()
D、getValue()

5、【判断题】Android中用 isChecked( ) 方法用来判断CheckBox控件是否选中。

6、【判断题】在QQ登录案例中,存储账号密码数据的文件是在data/data/包名/shared_prefs目录下。

5.1SQLite数据库简介

1、【单选题】Android系统中使用的数据库是( )。
A、Oracel
B、SQLServer
C、MySQL
D、SQLite

5.2.1SQLite操作API

1、【单选题】在下列选项中,关于SQLiteOpenHelper的主要作用描述正确的是( )
A、删除数据库表中的数据
B、修改数据库表中的数据
C、通过onCreate方法和onUpgrade方法管理数据库版本
D、管理数据库的事务

2、【单选题】关于操作SQLite数据库,不正确的说法是( ).
A、类主要是用来创建数据库和更新数据库
B、SQLiteDatabase类是用来操作数据库的
C、在每次调用SQLiteDatabase的getWritableDatabase()方法时,会执行SQLiteOpenHelper的onCreate方法。
D、当数据库版本发生变化时,可以自动更新数据库结构

3、【单选题】为了让数据库帮助类TestDBHelper具有管理数据库版本的功能,需要让它继承的类是()
A、SQLiteOpenHelper
B、SQLiteDateBase
C、CursorFactory
D、DateBaseFactory

4、【判断题】创建一个数据库帮助类TestDBHelper,需要继承父类SQLiteOpenHelper后才具有管理数据库版本的功能。

5.2.2数据库的常用操作

1、【单选题】在下列选项中,关于SQLiteDatabase的execSQL()没有涉及到的方法是()
A、删除数据
B、插入数据
C、修改数据
D、查询数据

2、【单选题】在android中对数据库的表进行查询操作用SQLiteDatabase类中的那两个方法进行查询( )
A、insert()和rawQuery()
B、query()和execSQL()
C、query()和rawQuery()
D、query()和update()

3、【单选题】在android中对数据库做增删改查有两种方式分别是SQLiteDatabase这个类中的哪几个方法 ( ).
A、第一种方式execSQL()和rawQuery()方法操作,第二种方式直接提供封装好的insert()、delete()、update()和query() 这四个方法操作;
B、第一种方式execSQL()方法操作,第二种方式直接提供封装好的insert()、delete()、update()和query() 这四个方法操作
C、两种方式都是用这个方法execSQL()
D、两种方式都是提供封装好的insert()、delete()、update()和query() 这四个方法操作;

4、【单选题】在下列选项中,用于查询数据的方法是()
A、update
B、insert
C、query
D、delete

5、【判断题】关于Android中操作数据库, SQLiteOpenHelper类是用于操作数据库的.

6、【判断题】Android中获取到SQLiteDatabase类实例后,可以对数据库进行增删改查操作.

7、【判断题】使用SQLiteDatabase的execSQL()方法可以实现数据库表增删改的操作。

8、【判断题】SQLiteDatabase只提供了两个查询数据库的方法,这两个方法是query()和rawQuery()。

5.2.3SQLite事务操作

1、【单选题】Android中开启事务的方法正确的是( )
A、db.startTransaction()
B、db.beginTransaction()
C、db.endTransaction()
D、intent.startTransaction()

2、【判断题】Android 中获取到SQLiteDatabase实例db后,可以通过db.beginTransaction()开启事务

3、【判断题】SQLite数据库的事务通常是在一组业务逻辑操作开始之前开启,在业务逻辑操作完成之后结束。

5.2.4sqlite3工具

1、【单选题】在下列选项中,存放sqlite3命令行工具的目录是( )
A、sdk/platform-tools
B、sdk/tools
C、sdk/platforms
D、sdk/build-tools

2、【单选题】在下列选项中,打开SQLite数据库的工具是()
A、open
B、sqlite
C、sqlite3
D、cat

3、【单选题】关于Android中sqlite3工具介绍不正确的是( )
A、sqlite3工具是一个命令行工具
B、在使用sqlite3工具需要先开启模拟器或者真机
C、使用sqlite3工具应该进入到dos下进行操作
D、sqlite3工具是一个收费的查看数据库的工具

4、【单选题】关于Android中sqlite3工具使用正确的是
A、adb sqlite3
B、ls -l sqlite3
C、sqlite3 cache
D、sqlite3 person.db

5、【判断题】Android 中sqlite3工具是命令行查看数据库的工具

6、【判断题】Android中,通常先使用sqlite3命令行工具打开数据库,然后做增删改查的操作。

5.3.1ListView控件的使用

1、【单选题】关于Listview下列说法正确的是( )
A、Listview的条目没有点击事件
B、BaseAdapter的getCount方法返回每个条目的id对象
C、若listview当前能显示10条,一共有100条数据,则产生了100个view
D、Listview必须通过Adapter来提供数据

2、【单选题】自定义一个数据适配器MyAdatper,需要让它继承的类是()
A、DefaultAdapter
B、ParentAdapter
C、BaseAdapter
D、BasicAdapter

3、【单选题】关于Listview下列说法正确的是( ).
A、Listview的条目没有点击事件
B、当数据超出能显示范围时listview自动具有可滚动的特性
C、若Listview当前能显示10条,一共有100条数据,则一定产生了100个view
D、Listview必须通过ArrayAdapter来提供数据

4、【单选题】下列控件中,用于以列表形式展示数据的是( )。
A、GridView
B、ListView
C、TextView
D、EditText

5、【单选题】在下列选项中,用来给ListView填充数据的方法是()
A、setAdapter()
B、setDefaultAdapter()
C、setBaseAdapter()
D、setView()

6、【判断题】Android 中ListView控件显示数据和TextView一样.

7、【判断题】ListView通常用于在界面上显示一个垂直滚动的列表。

5.3.2常用数据适配器

1、【单选题】关于SimpleAdapter说法正确的是( ).
A、SimpleAdapter是抽象类
B、SimpleAdapter数据适配器 每个item显示的内容用map来封装
C、Listview显示数据不可以使用simpleAdapter来显示
D、SimpleAdapter开发中用不到

2、【单选题】在下列选项中,把数组中的数据填充在ListView上的数据适配器是()
A、DefaultAdapter
B、ArrayAdapter
C、BaseAdapter
D、SimpleAdapter

3、【单选题】在下列选项中,把List集合中的Map类型数据填充在ListView上,使用的数据适配器是()
A、DefaultAdapter
B、ArrayAdapter
C、BaseAdapter
D、SimpleAdapter

4、【多选题】关于ArrayAdapter说法正确的是( ).
A、ArrayAdapter是抽象类
B、ArrayAdapter继承BaseAdapter
C、Listview显示数据可以使用ArrayAdapter来显示
D、ArrayAdapter 只能是给Textview控件使用的

5、【判断题】ArrayAdapter通常用来把数组中的数据填充在ListView上。

6、【判断题】Android中数组适配器ArrayAdapter显示数组的内容非常方便.

5.3.3Android应用市场案例

1、【单选题】在BaseAdapter的方法中,根据位置返回一个条目的View的方法是()
A、getView()
B、getItem()
C、getItemView()
D、getItemId()

2、【单选题】在BaseAdapter的方法中,用来返回ListView显示条目个数的方法是()
A、getViewCount()
B、getItemCount()
C、getItems()
D、getCount()

3、【多选题】关于Listview下列说法正确的是( )
A、Listview的条目可以设置点击事件
B、当数据超出能显示范围时listview自动具有可滚动的特性
C、若Listview当前页能显示6条,一共有12条数据,则添加适配器后会同时产生了12个单元行视图
D、Listview也可以通过其组件的属性来提供单元行的数据源

4、【判断题】Android中BaseAdapter的getItemId()方法作用是返回Listview一共有多少条目需要被显示

5、【判断题】自定义数据适配器类时,继承的父类是DefaultAdapter。

5.3.4商品展示案例

1、【单选题】在BaseAdapter的方法中,根据位置得到条目的ID的方法是()
A、getView()
B、getItem()
C、getItemId()
D、getCount()

2、【单选题】关于BaseAdapter说法错误的是( )
A、BaseAdapter是自定义的数据适配器
B、BaseAdapter是抽象的类 我们主要实现getCount方法和getView方法
C、BaseAdapter的getCount()方法的作用是返回Listview一共有多少个条目显示出来
D、BaseAdapter不是抽象的 可以直接使用

3、【单选题】关于BaseAdapter说法错误的是()
A、BaseAdapter是抽象类 我们主要实现getCount方法和getView方法
B、BaseAdapter是自定义的数据适配器
C、BaseAdapter不是抽象类,可以直接使用
D、BaseAdapter的getCount()方法的作用是返回Listview一共有多少个条目显示出来

4、【判断题】Android中BaseAdapter的getView方法作用是返回Listview每个条目具体显示的内容

5、【判断题】BaseAdapter中的getItem( )方法作用是根据位置得到条目对象。

6.1内容提供者简介

1、【判断题】内容提供者为其他应用程序提供了统一的访问数据库的方式,可以让其他应用程序来调用。

2、【判断题】内容提供者主要功能是实现跨程序共享数据的功能。

6.2.1创建一个内容提供者

1、【单选题】Android中创建内容提供者要继承( )。
A、ContentData
B、ContentProvider
C、ContentObserver
D、ContentDataProvider

2、【单选题】在Provider的节点中,用来指定内容提供者的主机名的属性是()
A、android:name
B、android:authorities
C、android:process
D、android:label

3、【单选题】在下列选项中,关于内容提供者的说法错误的是()
A、ontentProvider 是一个抽象类,只有继承后才能使用
B、内容提供者只有在AndroidManifest.xml文件中注册后才能运行
C、内容提供者为其它应用程序提供了统一的访问数据库的方式
D、内容提供者不是抽象类

4、【判断题】Android中创建内容提供者要继承ContentObserver。

5、【判断题】Android中创建内容提供者需要继承【ContentProvider】类。

6、【判断题】内容提供者只有在AndroidManifest.xml文件中注册后,才能运行。

6.2.2Uri简介

1、【单选题】在ContentProvider中ContentUris的作用是干什么( )。
A、用于获取Uri路径后面的ID部分
B、增删改查的方法都在这个类中
C、用于添加URI的类
D、根本就用不到这个类,没关系

2、【判断题】Uri是指统一资源标示符。

6.2.3读取联系人信息案例

1、【单选题】在读取联系人信息案例中,没有操作的表是()
A、raw_contacts
B、data
C、mimetypes
D、contacts

2、【单选题】若要实现对系统联系人的增删改查,需要使用的系统ContentProvider的Uri为( )。
A、Contacts.Photos.CONTENT_URI
B、Contacts.People.CONTENT_URI
C、Contacts.Phones.CONTENT_URI
D、Media.EXTERNAL_CONTENT_URI

3、【单选题】在下列选项中,联系人信息内容提供者的主机名是()
A、contact
B、com.android.contacts
C、com.android.provider.contact
D、com.android.provider.contacts

4、【判断题】Android中使用内容解析者查询联系人数据库信息的时候我们只要关心2张表就可以了。

5、【判断题】联系人信息是存放在数据库的sms表中的。

6.3.1ContentResolver用法

1、【单选题】在Activity中,获得ContentResolver对象的方法是( )
A、getContentResolver()
B、getResolver()
C、getContentResolvers()
D、getResolvers()

2、【单选题】在下列选项中,关于ContentResolver的说法错误的是()
A、ContentResolver通过uri匹配到内容提供者
B、通过ContentResolver可以在其它应用程序中访问内容提供者
C、ContentResolver的增删改查方法与目标内容提供者的增删改查方法是一一对应
D、ContentResolver不需要通过uri匹配到内容提供者

3、【单选题】如果要调用现成的 ContentProvider,获得如下( )对象才能调用其方法进行增删查改。
A、CursorLoader
B、ContentResolver
C、Cursor
D、ContentProvider

4、【判断题】ContentResolver的增删改查方法与目标内容提供者的增删改查方法不是一一对应的。

5、【判断题】ContentResolver是通过Uri匹配内容提供者的。

6、【判断题】Android中的ContentResolver主要作用是获取通过内容提供者暴露出来的数据。

7、【判断题】Android 中的ContentResolver 查询数据是通过url来获取内容提供者暴露的数据。

6.3.2短信备份案例

1、【单选题】利用内容解析者查询短信数据时uri怎么写( )。
A、Uri uri = Uri.parse(“content://sms”);
B、Uri uri = Uri.parse(“content://sms/data”);
C、Uri uri = Uri.parse(“content://sms/contact”);
D、Uri uri = Uri.parse(“sms/”);

2、【单选题】短信内容提供者的主机名是()
A、sms
B、com.android.sms
C、smsProvider
D、com.android.smsProvider

3、【单选题】短信的内容提供者是()
A、ContactProvider
B、MessageProvider
C、SmsProvider
D、TelephonyProvider

4、【判断题】Android中的短信数据库的内容我们可以直接通过内容解析者进行查询.

5、【判断题】读取短息数据时,是通过内容提供者读取的。

6.4.1什么是内容观察者

1、【单选题】自定义内容观察者时,继承的类是( )
A、BaseObserver
B、ContentObserver
C、BasicObserver
D、DefaultObserver

2、【单选题】定义一个ContentProvider过程中,需要增加匹配的uri,请问在UriMatcher.addURI(“youAuthority”,”item/*”,1)语句中井号*代表()。
A、某个字段
B、表名
C、匹配任意URI
D、id

3、【多选题】关于内容观察者说法正确的是( )
A、内容观察者不是Android中的四大组件
B、内容观察是四大组件之一
C、内容观察者原理和java中的观察者模式一模一样
D、内容观察者原理是通过注册Uri的形式来观察数据的变化

4、【判断题】Android中的内容观察者是Android的四大组件之一。

5、【判断题】注册内容观察者是通过ContentResolver的registerContentObserver()方法注册的。

6.4.2短信接收器案例

1、【单选题】可以在Activity中得到ContentResolver实例对象的方法是()
A、new ContentResolver()
B、getContentResolver()
C、newInstance()
D、ContentUris.newInstance()

2、【单选题】下面哪些功能需要用ContentProvider来实现()。
A、读取系统中的短信内容
B、建立一个数据库
C、开机后自动启动一个程序
D、播放一段音乐

3、【单选题】在Android中的Activity种通过下面哪个方法来得到ContentResolver的实例对象。
A、new ContentResolver
B、getContentResolver()
C、newInstance()
D、ContentUris.newInstance()

4、【判断题】在短信接收器案例中,自定义的短信内容提供者SmsContentObserver类,继承了ContentObserver类。

5、【判断题】在短信接收器案例中,短信内容提供者的数据发生变化时,会触发onChange()方法的调用。

6、【判断题】Android中通过内容解析者查询短信数据库的内容时,不需要加入读短信的权限.

7、【判断题】利用内容观察者可以监听短信数据库的变化,当短信数据库发生变化的时候会执行内容观察者的onChange()方法。

7.1.1什么是广播接收者

1、【单选题】关于广播接收者说法错误的是( ).
A、Android中定义广播接收者要继承BroadCastReceiver
B、Android中定义广播接收者的目的之一是方便我们开发者进行开发
C、Android系统中内置了很多系统级别的广播
D、Android中定义广播这个组件意义不是很大

2、【多选题】以下说法错误的是()
A、Android中定义广播接收者要继承Receiver
B、Android中定义广播接收者只能接收系统定义好的广播.
C、我们可以发送自定义广播
D、广播分有序和无序广播

7.1.2广播接收者的创建与注册

1、【单选题】BroadcastReceiver广播中有几种注册方式( ).
A、1
B、2
C、3
D、4

2、【单选题】广播接收者需要在清单文件配置( )节点
A、receiver
B、broadReceiver
C、service
D、contentProvider

3、【单选题】Android中定义广播接收者要继承( ).
A、BroadCastReceiver
B、BroadCast
C、Receiver
D、BroadCastReboot

4、【判断题】Android中广播接收者事件可以在清单文件里面注册,也可以通过代码的方式注册.

5、【判断题】Android中所有广播接收事件必须都在清单文件注册.

6、【判断题】Android中定义广播接收者,定义一个类要继承BroadCastReceiver类.

7、【判断题】Android中广播接收者必须在清单文件里面注册

7.1.3IP拨号器案例

1、【单选题】注册外拨电话的广播事件对应的action是( ).
A、android_intent.action.NEW_OUTGOING_CALL
B、android_intent.action.NEW_CALL
C、android_intent.action.OUTGOINT_CALL
D、android_intent.action.OUTGOINT_CALL_DATA

2、【单选题】Ip拨号器中我们把ip号码通过sharedPreferences保存起来,以下说法错误的是( ).
A、通过上下文来初始化sharedPreferences
B、使用sharedPreferences需要获取sharedPreferences的编辑器.
C、sharedPreferences保存数据后实际上生成了一个xml文件
D、使用sharedPreferences初始化后可以直接保存数据.

3、【单选题】在清单文件中注册了NEW_OUTGOING_CALL,代码中获取到广播事件的方法是( ).
A、getAction()
B、getActionCall()
C、getMethod()
D、getOutCall()

4、【单选题】注册外拨电话的广播事件需要加的权限是( ).
A、不需要加权限
B、
C、
D、

5、【判断题】注册外拨电话的广播事件时不需要加额外的权限.

6、【判断题】注册外拨电话的广播事件对应的action是android_intent.action.NEW_OUTGOING_CALL .

7.2.1自定义广播的发送与接收

1、【单选题】关于sendBroadcast()方法说法正确的是( ).
A、该方法是发送一条有序广播
B、该方法是发送一条无序广播
C、该方法即是发送有序广播也可以发送无序广播
D、以上说法都不正确

2、【单选题】要发送一个广播,需要实现sendBroadcast方法,假设其中intent=

学习通移动应用开发技术

随着移动互联网的快速发展,移动应用已经成为人们生活中不可或缺的一部分。因此,学习移动应用开发技术已经成为了许多人的必修课程。而“学习通”平台则成为了众多学习者的首选。下面将介绍学习通移动应用开发技术的相关知识。

移动应用开发技术的发展历程

在移动应用开发技术的发展历程中,可以分为三个时期:

  • 第一阶段:基于Java的J2ME技术。这是最早期的移动应用开发技术,它的特点是开发周期短、成本低。
  • 第二阶段:基于iOS和Android操作系统的原生应用开发。这一阶段的技术难度更高,但是应用性能更好,用户体验更佳。
  • 第三阶段:基于HTML5技术的混合应用开发。这一阶段的技术更加成熟,开发周期短、成本低,同时具有更好的跨平台能力。

学习通移动应用开发技术

学习通移动应用开发技术课程主要包括两部分:iOS开发和安卓开发。通过学习这两部分内容,可以轻松掌握移动应用开发技术。

iOS开发

iOS开发是指基于苹果公司的iOS操作系统开发移动应用。学习iOS开发需要掌握以下内容:

  • Swift语言基础,包括变量的定义、函数的使用等。
  • Xcode的使用,包括界面设计、代码编写等。
  • iOS的开发框架,包括UIKit、Core Data等。
  • 实战开发,包括应用的发布等。

安卓开发

安卓开发是指基于谷歌公司的安卓操作系统开发移动应用。学习安卓开发需要掌握以下内容:

  • Java语言基础,包括变量的定义、函数的使用等。
  • Android Studio的使用,包括界面设计、代码编写等。
  • Android的开发框架,包括Activity、Fragment等。
  • 实战开发,包括应用的发布等。

移动应用开发技术的未来

移动应用开发技术将继续发展,未来的趋势将是更加简单、快速、高效、安全。目前,无代码(Low-Code)和无服务(Serverless)等技术已经开始走进移动应用开发领域。这些技术将更加简化开发流程,提高开发效率。

总结

学习通移动应用开发技术课程包含iOS开发和安卓开发两部分内容,通过学习这两部分内容,可以轻松掌握移动应用开发技术。未来,移动应用开发技术将继续发展,越来越多的新技术将应用于移动应用开发领域。



Ɣ回顶部