天津理工大学移动终端开发技术(安卓)期末考试复习题

合集下载

《移动终端应用开发》复习资料

《移动终端应用开发》复习资料

《移动终端应用开发》复习资料一、选择题1.C语言程序的基本单位是()。

A. 程序行B. 语句C. 函数D. 字符2.C语言程序从()开始执行。

A. 程序中第一条可执行语句B. 程序中第一个函数C. 程序中的main函数D. 包含文件中的第一个函数3.下列关于C语言的说法错误的是()。

A. C程序的工作过程是编辑、编译、连接、运行B. C语言不区分大小写。

C. C程序的三种基本结构是顺序、选择、循环D. C程序从main函数开始执行4.下列正确的标识符是()。

A.-a1B.a[i]C.a2_iD.int t5.下列四组选项中,正确的C语言标识符是()。

A.%xB.a+bC.a123D.1236.C语言中的简单数据类型包括()。

A.整型、实型、逻辑型B.整型、实型、逻辑型、字符型C.整型、字符型、逻辑型D.整型、实型、字符型7.如果int a=3,b=4;则条件表达式"a<b? a:b"的值是()。

A.3B.4C.0D.18.C语言中,关系表达式和逻辑表达式的值是()。

A. 0B. 0或1C. 1D. ‘T’或’F’9.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是()。

A.b=1.0/aB.b=(float)(1/a)C.b=1/(float)aD.b=1/(a*1.0)10. 以下对一维数组a的正确说明是:()。

A. char a(10);B. int a[];C. int k=5,a[k];D. char a[3]={‘a’,’b’,’c’};11.在C语言中对一维整型数组的正确定义为()。

A. int a(10);B. int n=10,a[n];C. int n;a[n];D. #define N 10 int a[N];12.若有以下数组说明,则i=10;a[a[i]]元素数值是()。

int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.10B.9C.6D.513.对二维数组的正确定义是()。

android终端开发期末考试试题

android终端开发期末考试试题

android终端开发期末考试试题# Android终端开发期末考试试题## 一、选择题(每题2分,共40分)1. Android开发中,Activity生命周期的第一个方法是什么?A. onCreate()B. onStart()C. onResume()D. onDestroy()2. 下列哪个不是Android四大组件之一?A. ActivityB. ServiceC. Content ProviderD. BroadcastReceiverE. Fragment3. Intent在Android中用于什么?A. 启动ActivityB. 启动ServiceC. 广播消息D. 所有以上4. Android中,下列哪个不是布局文件的扩展名?A. .xmlB. .javaC. .axmlD. .kotlin5. 下列哪个不是Android开发中常用的数据存储方式?A. Shared PreferencesB. SQLite数据库C. 文件存储D. 网络存储6. Android中,下列哪个不是View的事件类型?A. onClickB. onLongClickC. onScrollD. onDrag7. Android中,下列哪个不是Fragment的生命周期方法?A. onAttach()B. onCreate()C. onCreateView()D. onDestroy()8. 下列哪个不是Android开发中常用的网络请求库?A. RetrofitB. VolleyC. OkHttpD. Gson9. Android中,下列哪个不是动画类型?A. Alpha动画B. Translate动画C. Scale动画D. Rotate动画10. 下列哪个不是Android开发中常用的图片加载库?A. PicassoB. GlideC. FrescoD. ImageLoader## 二、简答题(每题10分,共30分)1. 请简述Android中Service的生命周期,并说明其与Activity生命周期的区别。

Android技术基础,大学期末考试题复习

Android技术基础,大学期末考试题复习

Android一、选择题1. 下面关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是?(选择一项) ( D)A. DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念.B.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念C.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM 不一定都是在Linux 中的一个进程,所以说不是一个概念.D.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM 都是在Linux 中的一个进程,所以说可以认为是同一个概念.2.下列选项哪个不是Activity启动的方法?(选择一项)( A)A. goToActivityB. startActivityC. startActivityFromChildD. startActivityForResult4.下列哪一个不属于Activity的生命周期方法(选择一项)( A)A. onIniB. onStartC. onStopD. onPause5.对于XML布局文件中的视图控件,layout_width属性的属性值不可以是什么?(选择一项) ( D)A. match_parentB. fill_parentC. wrap_contentD. match_content6.对一些资源以及状态的操作保存,最好是保存在Activity生命周期的哪个函数中进行?(选择一项) ( A)A. onStartB. onPauseC. onCreateD. onResume7.关于视图控件的常用事件Android.docx描述中,不正确的是?(选择一项) ( A)A. Click事件只能使用在按钮上,表示按钮的点击动作B.当TextView类视图控件失去焦点或获得焦点时,将触发FocusChange事件C. 当单选框中某一选项被选择时,将触发CheckedChange事件D.当多选框中某一选项被选择时,将触发CheckedChange事件题目8.以下关于Android应用程序的目录结构描述中,不正确的是(选择一项) ( D)A. src目录是应用程序的主要目录,由Java类文件文件组成B. assets目录是原始资源目录,该目录中的内容将不会被R类所引用C. res目录是应用资源目录,该目录中的所有资源内容都会被R类所索引D. AndroidManifest.xml文件是应用程序目录清单文件,该文件由ADT自动生成,不需要程序员手动修改9.下列关于XML布局文件在Java代码中被引用的说明中,不正确的是(选择一项) ( B)A.在Activity中,可以使用findViewById( )方法,通过资源id,获得指定视图元素B.在Activity中,可以使用R.drawable-system.***方式引用Android系统所提供的图片资源C. 在Activity中,可以使用setContentView( )方法,确定加载哪一个布局文件D.可以使用View类的findViewById( )方法,获得当前View对象中的某一个视图元素10.下列关于Android布局文件常用的长度/大小单位的描述中,不正确的是(选择一项) ( C)A. dp是设备独立像素,不依赖于设备,是最常用的长度单位B. sp代表放大像素,主要用于字体大小的显示C. px是像素单位,在不同的设备上显示效果相同,因此推荐在布局中使用该单位D.在设置空间长度等相对距离时,推荐使用dp单位,该单位随设备密度的变化而变化11.下列哪一个选项不属于Android中预定义的布局方式(选择一项)( A)A. TabLayoutB. RelativeLayoutC. AbsoluteLayoutD. LinearLayout13.下列哪一款移动设备搭载的是Android平台?(选择一项)( A)A. NOKIA手机B.小米手机C. iPhone手机D. iPad14.下列关于ListView使用的描述中,不正确的是?(选择一项)( B)A.要使用ListView,必须为该ListView使用Adpater方式传递数据B.要使用ListView,该布局文件对应的Activity必须继承ListActivityC. ListView中每一项的视图布局既可以使用内置的布局,也可以使用自定义的布局方式D. ListView中每一项被选中时,将会触发ListView对象的ItemClick事件16.在android 中使用Menu 时可能需要重写的方法有?(选择两项)( AB)A. onOptionsItemSelected()B. onCreateOptionsMenu()C. onItemSelected()D. onCreateMenu()17.下列关于内存回收的说明,哪个是正确的?(选择一项)( C)A.程序员必须创建一个线程来释放内存B.内存回收程序允许程序员直接释放内存C.内存回收程序负责释放无用内存D.内存回收程序可以在指定的时间释放内存对象18.Math.round(11.5)等于多少(). Math.round(-11.5)等于多少?(选择一项) ( C)A. 11 ,-11B. 11 ,-12C. 12 ,-11D. 12 ,-1219.下列程序段:void complicatedexpression_r(){int x=20,y=30;boolean b;b=x>50&&y>60||x>50&&y60||x(选择一项) ( D)A. 1B. 0C. TRUED. FALSE21.android 关于service生命周期的onCreate()和onStart()说法正确的是?(选择两项) ( BD)A.如果service已经启动,将先后调用onCreate()和onStart()方法B.当第一次启动的时候先后调用onCreate()和onStart()方法C.当第一次启动的时候只会调用onCreate()方法D.如果service已经启动,只会执行onStart()方法,不再执行onCreate()方法26.下列哪个是AbsoluteLayout(绝对布局) 中特有的属性?(B)A. android:layout_heightB. android:layout_xC. android:layout_aboveD. android:layout_toRightOf31.android 是如何组织Activity 的?(选择一项) ( A)A.以栈的方式组式ActivityB.以队列的方式组织ActivityC.以树形方式组织ActivityD.以链式方式组织Activity32.android 中下列属于Intent的作用的是?(选择一项)( D)A.处理一个应用程序整体性的工作B.是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失C.实现应用程序间的数据共享D.可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带33.onPause 什么时候调用?(选择一项) ( B)A.当界面启动时B.当onCreate 方法被执行之后C.当界面被隐藏时D.当界面重新显示时34.在Activity 中,如何获取service 对象?(选择一项)( D)A.可以通过直接实例化得到。

Android移动开发(慕课版)自测试题5套及答案(大学期末复习资料)

Android移动开发(慕课版)自测试题5套及答案(大学期末复习资料)

自测试卷1一、选择题1.Google于()正式发布的Android平台。

A.2007年11月5日B.2008年11月5日C.2007年1月10日D.2009年4月30日2.下面关于Android SDK描述错误的是()。

A.Android SDK是Android开发工具包B.包含了模拟器、API文档、示例代码等内容C.在Android的官方网站中可以下载到D.包含了Java程序开发所需要的编译、调试工具3.创建Android项目时,下面的包名错误的是()。

A.com.minrisoft B.com.mingrisoft.01 C. D.com.mr_014.输出错误日志信息使用Log类的()方法。

A.d B.e C.w D.i5.在XML布局文件中,定义网格布局管理器可以使用()标记。

A.<GridView> B.<TableLayout> C.<GridLayout> D.<TableRow>6.()对象用于保存要携带的数据包。

A.Bundle B.Map C.Intent D.Activity7.下列关于线程描述错误的是()。

A.在一个线程中,可以有多个HandlerB.在一个线程中,只能有一个MessageQueueC.在一个线程中,只能有一个LooperD.在一个线程中,只能有一个Looper、MessageQueue和Handle8.Cursor类提供的()方法用于将指针移动到下一条记录上。

A.moveToPosition() B.moveToPrevious() C.moveToFirst() D.moveToNext()9.在配置Widget时,通过调用setResult()方法可以实现设置Activity的返回码。

当返回码为()表示Widget设置成功。

A.200 B.RESULT_SUCCESS C.RESULT_OK D.RESULT_CANCELED10.下面的代码用于实现创建绘图画布功能,请问空白处应该填入()。

移动APP开发基础(Android)期末考试A卷

移动APP开发基础(Android)期末考试A卷

一、单项选择题(每题3分,共30分)1. 程序员编写的Android APP 属于Android 系统体系结构中的( )层。

A .应用程序层B .应用框架层C .系统库层D .Linux 内核层 2. Android 将SQLite 数据库文件存放在( )目录中。

A ./data/data/<包名>/files B./data/data/<包名>/shared_prefs C./mnt/sdcard/D./data/data/<包名>/databases3.下列选项中,能使TextView 中的内容居中显示的是( )A. android:layout_gravity="center"B. android:gravity="center"C. android:layout_centerInparent="true"D. android:layout_centerHrizontal="true" 4.指定ImageView 控件要显示的图片,应该使用属性( )。

A. android:inputTypeB. android:textC. app:srcCompatD. android:autoLink5.( )布局将其中的控件都重叠放在区域的左上角。

A .LinearLayoutB .RelativeLayoutC .AbsoluteLayoutD .FrameLayout6. 以下哪种方式不属于使用Adapter 绑定数据,显示到ListView 上( )。

A.使用entries 属性显示字符串数组资源B.使用ArrayAdapter 绑定数组类型的数据C.使用SimpleAdapter 绑定ArrayList 类型的数据D.使用SimpleAdapter 绑定数据库查询结果的游标7. 在进行Activity 跳转时,如果需要向目标Activity 传递附加的数据信息,应该使用( )来进行传递。

天津理工移动终端技术——总复习

天津理工移动终端技术——总复习

Intent(意图)
BroadcastReceiver (广播接收器) Widget(小组件)
应用程序间的消息传递框架
意图广播的使用者。通过创建和注册广播接收器,应用程序可以 监听到那些匹配特定的过滤标准的意图广播 可以添加到主屏的可视化应用程序组件
Notification(通知) 用户通知框架。通知允许向用户发送信号,但却不会过分吸引他 们的注意力或者打断他们当前的活动
功能 应用程序表示层,应用程序中的每一个屏幕都是Activity类的扩展 应用程序不可见的工作者,在后台运行 可共享的数据存储器,提供可共享的数据库功能 私有数据一般不采用ContentProvider,而是使用文件,或者SQLite 中的数据库
组件 Activity(活动) Service(服务) ContentProvider (内容提供器)
1.4 Android体系结构

应用程序框架

提供Android平台基本的管理功能和组件重用机制,包括


Activity Manager,管理应用程序的生命周期 Windows Manager,启动应用程序的窗体 Content Provider,共享私有数据,实现跨进程的数据访问 Package Manager,管理安装在Android系统内的应用程序 Teleghony Manager,管理与拨打和接听电话的相关功能 。。。
gen:
用来保存ADT自动生成的java文件 R.java文件是ADT自动生成的文件,包含对drawable、 layout和values目录内的资源的引用指针,Android程序能 够直接通过R类引用目录中的资源 R.java文件一般不能手工修改,如果向资源目录中增加或 删除了资源文件,则需要在工程名称上右击,选择Refresh 来更新R.java文件中的代码 用来存放原始格式的文件,例如音频文件、视频文件等二 进制格式文件。此目录中的资源不能被R.java文件索引。, 所以只能以字节流的形式读取。一般情况下为空

《移动终端UI设计》期末试卷及答案2套

《移动终端UI设计》期末试卷及答案2套

《移动终端UI设计》期末试题(A卷)一、填空题(每空1分,共10分)1.单个连续滑块可以分为(无数值)和(有数值)两种。

2.在做色块按钮设计时,也要注意(层级比重),颜色对比如果太鲜明,会使人产生跳跃的视觉体验,带来操作困扰。

3.同一款应用程序中的同级别按钮,在(风格上)、(角度上)、(配色上)和弧度上都要统一,反之会使页面显得混乱。

4.首页是一个向消费者提供消费内容和服务的( 入口 ),是整个APP中最重要的页面。

()5.使用“文字工具”创建文本有两种形式即(创建点文本)和(段落文本)。

6.用于控制圆角矩形的平滑程度参数是(圆角半径)。

二、判断题(每题1分共,10分)1.在屏幕尺寸相同的情况下,可显示的像素越多画面就越精细()2.像素密度(DPI)常用于屏幕显示的描述,也就是每英寸像素点的数量。

()3.华为mate20pro手机APP Store中的图标尺寸为512×512像素。

()4.设计手机图标时像素分辨率不能低于100像素,这样图标才不会失真。

()5.视网膜屏幕是分辨率超过人眼识别极限的高分辨率屏幕,是苹果公司发明的一个营销术语,并在部分移动产品使用。

()6.定义主题是指把要设计的图标所涉及的关键词罗列出来,重点词汇突出显示,确定这些图是围绕一个什么样的主题展开设计,对整体的设计有一个把控。

()7.经过对实物的抽象化汲取后,便可以进行草图的绘制。

在这个过程中,主设计师需要将实物转化成视觉形象,即最初的主题。

()8.拟物化设计就是尽可能的少绘制繁琐细节,以追求间约则不简单。

()9.同一个尺寸规格,根据不同形状的图标,会导致面积占比引起的视差大小不同,要在参考尺寸范围内绘制进行调整。

()10.点线角是平面构成的3大元素。

()三、选择题(每题2分,共10分)1.Android系统平台按照像素密度将手机屏幕进行等级划分,其中XHDPI属于()。

A. 像素密度B. 高密度屏幕C. 像素分辨率D. 手机屏幕2. 移动UI设计需要有平面构成、色彩构成、美术绘画等基础,还要具有()能力。

完整word版,Android开发技术期末考试复习题

完整word版,Android开发技术期末考试复习题

试题一、选择题1 android虚拟设备的缩写是(A VD)2 Android SDK目前支持的操作系统(Linux)3 Android开发工具插件(ADT)没有提供的开发功能(自动更新)4 Android SDK提供一些开发工具可以把应用软件打包成Android格式文件(APK)5 Android当中基本的所有的UI都是由(view)或者其子类实现的7下列不是Activity的生命周期方法之一的是()onCreate onStart onRestart onResume onPause onStop onDestroy8 以下可以做EditText编辑框的提示信息是(adroid:hint)以下不是手机操作系统的是(windows vista)下列哪个属性是专用于相对布局的(D)A.android.orientation 线性vertical 垂直horizontalB.android:stretchColumnsC.android:layout_alignParentRightD.android:layout_toRightOf定义LinearLayout垂直方向布局时设置的属性( D )A.android:layout_heightB.android:gravityC.android:layoutD. android:orientation vertical 垂直为了使android适应不同分辨率的机型,布局时字体单位应用( D )A.dpB.dip 像素C.pxD.sp下面属于android的动画分类的有( AB)A.TweenB.FrameC.DrawD.Animation Property Animation属性动画android 关于service生命周期的onCreate()和onStart()说法正确的是( AD )A.当第一次启动的时候先后调用onCreate()和onStart()方法B.当第一次启动的时候只会调用onCreate()方法C.如果service已经启动,将先后调用onCreate()和onStart()方法D.如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法在android中使用Menu时可能需要重写的方法有(AC)A、onCreateOptionsMenu() 三种菜单:选项菜单、上下文菜单、子菜单B、onCreateMenu()C、onOptionsItemSelected()D、onItemSelected()Intent传递数据时,下列的数据类型哪些可以被传递(ABCD)A、SerializableB、charsequenceC、ParcelableD、Bundlejava.io包中的( A )和( B )类主要用于对对象Object的读写。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

双向调用如何实现?远程服务如何实现?简答题1、可见进程可见进程指部分程序界面能够被用户看见,却不在前台与用户交互,不响应界面事件的进程。

2、简述R.java和AndroidManifest.xml文件的用途R.java文件是ADT自动生成的文件,包含对drawable、layout和values目录内的资源的引用指针,Android程序能够直接通过R类引用目录中的资源。

R.java文件不能手工修改。

AndroidManifest.xml是XML格式的Android程序声明文件,包含了Android系统运行Android 程序前所必须掌握的重要信息,这些信息包含应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等,而且每个Android程序必须在根目录下包含一个AndroidManifest.xml文件。

3、简述Android系统的4种基本组件Activity、service、Content Provider的用途Activity(活动):应用程序表示层,应用程序中的每一个屏幕都是Activity类的扩展。

Service(服务):应用程序不可见的工作者,在后台运行。

ContentProvider(内容提供器):可共享的数据存储器,提供可共享的数据库功能。

私有数据一般不采用ContentProvider,而是使用文件,或者SQLite中的数据库。

BroadcastReceiver(广播接收器):意图广播的使用者。

通过创建和注册广播接收器,应用程序可以监听到那些匹配特定的过滤标准的意图广播。

4、简述Activity生命周期的四种状态,以及状态之间的变换关系。

Activity表现为四种状态:活动状态:Activity在用户界面中处于最上层,完全能被用户看到,能够与用户进行交互。

暂停状态:Activity在界面上被部分遮挡,该Activity不再处于用户界面的最上层,且不能够与用户进行交互。

停止状态:Activity在界面上完全不能被用户看到,也就是说这个Activity被其他Activity全部遮挡。

非活动状态:不在以上三种状态中的Activity则处于非活动状态(被用户关闭或系统终止)。

转换关系:5、简述Activity事件回调函数的作用和调用顺序。

onCreate():Activity启动后第一个被调用的函数,常用来进行Activity的初始化,例如创建View、绑定数据或恢复信息等。

onStart():当Activity显示在屏幕上时,该函数被调用。

onRestart():当Activity从停止状态进入活动状态前,调用该函数。

onPause():当Activity进入暂停状态时,该函数被调用。

一般用来保存持久的数据或释放占用的资源。

onStop():当Activity进入停止状态时,该函数被调用。

onDestroy():在Activity被终止前,即进入非活动状态前,该函数被调用。

onSaveInstanceState():Android系统因资源不足终止Activity前调用该函数,用以保存Activity 的状态信息,供onRestoreInstanceState()或onCreate()恢复之用。

onRestoreInstanceState():恢复onSaveInstanceState()保存的Activity状态信息,在onStart()和onResume ()之间被调用。

6、简述5种界面布局的特点线性布局:在线性布局中,所有的子元素都按照垂直或水平的顺序在界面上排列,如果垂直排列,则每行仅包含一个界面元素,如果水平排列,则每列仅包含一个界面元素。

框架布局:最简单的界面布局,是用来存放一个元素的空白空间,且子元素的位置是不能够指定的,只能够放置在空白空间的左上角,如果有多个子元素,后放置的子元素将遮挡先放置的子元素。

网格布局:将屏幕划分网格,通过指定行和列可以将界面元素添加的网格中网格的边界对用户是不可见的表格布局还支持嵌套,可以将另一个表格布局放置在前一个表格布局的网格中,也可以在表格布局中添加其他界面布局,例如线性布局、相对布局等等相对布局:相对布局(RelativeLayout)是一种非常灵活的布局方式,能够通过指定界面元素与其他元素的相对位置关系,确定界面中所有元素的布局位置,能够最大程度保证在各种屏幕类型的手机上正确显示界面布局。

绝对布局:绝对布局(AbsoluteLayout)能通过指定界面元素的坐标位置,来确定用户界面的整体布局。

7、简述Android系统支持三种菜单选项菜单(Menu类),包括图标菜单、扩展菜单;子菜单(SubMenu类);快捷菜单(ContextMenu 类)。

8、简述Intent的定义和用途Intent是一种组件之间消息传递机制,是一个动作的完整描述,包含了动作的产生组件、接收组件和传递的数据信息。

Intent的用途:启动Activity和Service;在Android系统上发布广播消息。

9、启动Activity方式显式启动,程序必须在Intent中指明启动的Activity所在的类。

隐式启动,Android系统根据Intent的动作和数据来决定启动哪一个Activity,也就是说在隐式启动时,Intent中只包含需要执行的动作和所包含的数据,而无需指明具体启动哪一个Activity,选择权由Android系统和最终用户来决定。

10、简述Intent过滤器的定义和功能定义:Intent过滤器是一种根据Intent中的动作(Action)、类别(Categorie)和数据(Data)等内容,对适合接收该Intent的组件进行匹配和筛选的机制。

功能:Intent过滤器可以匹配数据类型、路径和协议,还包括可以用来确定多个匹配项顺序的优先级(Priority);应用程序的Activity组件、Service组件和BroadcastReceiver都可以注册Intent 过滤器,则这些组件在特定的数据格式上就可以产生相应的动作。

11、Intent解析的匹配规则没有指定“动作”的Intent过滤器可以匹配任何的Intent,但是没有指定“类别”的Intent过滤器只能匹配没有“类别”的Intent,把Intent“数据”Uri的每个子部与Intent过滤器的<data>标签中的属性进行匹配,如果<data>标签指定了协议、主机名、路径名或MIME类型,那么这些属性都要与Intent的Uri数据部分进行匹配,任何不匹配的Intent过滤器均被过滤掉。

12、简述Service的基本原理和用途定义:Service是Android系统的后台服务组件,适用于开发无界面、长时间运行的应用功能。

用途:用于进程间通信(Inter Process Communication,IPC),解决两个不同Android应用程序进程之间的调用和通讯问题。

特点:没有用户界面;比处于非活动状态的Activity 优先级高,不会轻易被Android系统终止。

即使Service被系统终止,在系统资源恢复后Service也将自动恢复运行状态。

13、实现远程服务的步骤接口定义:使用AIDL语言定义跨进程服务的接口。

接口实现:根据AIDL语言定义的接口,在具体的Service类中实现接口中定义的方法和属性。

接口使用:在需要调用跨进程服务的组件中,通过相同的AIDL接口文件,调用跨进程服务。

14、简述在嵌入式系统中使用SQLite数据库的优势SQLite是一个开源的嵌入式关系数据库,在2000年由D. Richard Hipp发布,其优势(特点)有:更加适用于嵌入式系统,嵌入到使用它的应用程序中;占用资源非常少,运行高效可靠,可移植性好;提供了零配置(zero-configuration)运行模式。

15、Android系统支持四种文件操作模式MODE_PRIVATE(私有模式)缺省模式,文件仅能够被文件创建程序访问,或具有相同UID 的程序访问。

MODE_APPEND,追加模式,如果文件已经存在,则在文件的结尾处添加新数据。

MODE_WORLD_READABLE全局读模式。

MODE_WORLD_WRITEABLE全局写模式,允许任何程序写入私有文件。

16、简述Android NDK开发的优势和不足。

优势:解决了核心模块使用托管语言开发执行效率低下的问题;允许程序开发人员直接使用C/C++源代码,极大的提高了Android应用程序开发的灵活性。

不足:增加程序的使用非托管代码复杂性,增加了程序调试的难度;CPU运算量大和内存消耗较少的部分运行效率最高,(例如信号处理或物理仿真)因此并不是所有的核心部分都适合使用C/C++语言编写。

程序填空题:ActivityIntent intent = new Intent(IntentDemo.this, ActivityToStart.class);startActivity(intent);隐式启动Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(""));startActi vity(intent);显式获取返回值int SUBACTIVITY1 = 1;Intent intent = new Intent(this, SubActivity1.class);startActivityForResult(intent, SUBACTIVIT Y1);隐式获取返回值int SUBACTIVITY2 = 2;Uri uri = Uri.parse("content://contacts/people");Intent intent = new Intent(Intent.ACTION_PICK, uri);startActivityForResult(intent, SUBACTIVITY2);在父Activity中处理子Activity 的返回值public void onActivityResult(int requestCode, int resultCode, Intent data){Super.onActivityResult(requestCode, resultCode, data);switch(requestCode){case SUBACTIVITY1:if (resultCode == Activity.RESULT_OK){Uri uriData = data.getData();}else if (resultCode == Activity.RE SULT_CANCEL){ } break;case SUBACTIVITY2:if (resultCode == Activity.RESULT_OK){Uri uriData = data.getData ();} break;} }Broadcast Receiver 广播消息发送消息String UNIQUE_STRING = "edu.hrbeu.BroadcastReceiverDemo";Intent intent = new Intent(UNI QUE_STRING);intent.putExtra("key1", "value1");intent.putExtra("key2", "value2");sendBroad cast(intent);接收消息public void onReceive(Context context, Intent intent) {String msg = intent.getStringExtra("mess age");Toast.makeText(context, msg, Toast.LENGTH_SHORT).show(); }显式启动Intent serviceIntent = new Intent(this, RandomService.class);startService(serviceIntent);隐式启动Intent serviceIntent = new Intent();serviceIntent.setAction("edu.hrbeu.RandomService");停止服务StopServic (serviceIntent )存储ContentProvider首先设置存储模式(私有模式、全局读、全局写)单个模式public static int MODE = Context.MODE_PRIVATE; (私有)多个模式public static int MODE = Context.MODE_WORLD_READABLE +Context.MODE_WORLD_ WRITEABLE; (全局读和写)定义SharedPreferences 的名称public static final String PREFERENCE_NAME = "SaveSetting";获取SharedPreferences 对象,参数为:名称,模式SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE); 写数据SharedPreferences.Editor editor = sharedPreferences.edit();editor.putString("Name", "Tom");edit or.putInt("Age", 20);editor.putFloat(“ Height ” , 1.81f);mit();读取数据SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE);String name = sharedPreferences.getString("Name","Default Name");int age = sharedPreferences. getInt("Age", 20);float height = sharedPreferences.getFloat(“ Height ” , 1.81f);ContentProvider 数据分享注册ContentProvider 使用<provider>标签<application android:icon="@drawable/icon" android:label="@string/app_name"><provider android:name = ".PeopleProvider" android:authorities = "edu.hrbeu.peopleprovider"/> </application>获取ContentResolver 对象ContentResolver resolver = getContentResolver();查询操作查询ID 为2的数据String KEY_ID = "_id";String KEY_NAME = "name";String KEY_AGE = "age";String KEY_HEIGHT = "height";Uri uri = Uri.parse(CONTENT_URI_STRING + "/" + "2";Cursor cursor = resolver.query(uri, new String[] {KEY_ID, KEY_NAME, KEY_AGE, KEY_HEI GHT}, null, null, null);Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder ) 添加操作添加单条数据ContentV alues values = new ContentValues();values.put(KEY_NAME, "Tom");values.put(KEY_ AGE, 21);values.put(KEY_HEIGHT, );Uri newUri = resolver.insert(CONTENT_URI, values);添加多条数据ContentValues[] arrayValues = new ContentValues[10];int count = resolver.bultInsert(CONTEN T_URI, arrayValues);删除操作删除ID 为2的数据Uri uri = Uri.parse(CONTENT_URI_STRING + "/" + "2");int result = resolver.delete(uri, null, null);删除条件定义为ID 大于4的数据String selection = KEY_ID + ">4";int result = resolver.delete(CONTENT_URI, selection, null);更新操作ContentValues values = new ContentValues();values.put(KEY_NAME, "Tom");values.put(KEY_ AGE, 21);values.put(KEY_HEIGHT, );Uri uri = Uri.parse(CONTENT_URI_STRING + "/" + "7");int result = resolver.update(uri, values , null, null);一、选择题1、android虚拟设备的缩写是(AVD)2、Android SDK目前支持的操作系统(Linux)3、Android开发工具插件(ADT)没有提供的开发功能(自动更新)4、Android SDK提供一些开发工具可以把应用软件打包成Android 格式文件(APK)5、Android当中基本的所有的UI 都是由(view )或者其子类实现的7、下列不是Activity的生命周期方法之一的是( )A. onCreateB. onStartC. onRestartD. onResumeE. onPauseF. onStopG. onDestroy8、以下可以做EditText编辑框的提示信息是(adroid:hint)9、以下不是手机操作系统的是(windows vista)10、下列哪个属性是专用于相对布局的(android:layout_toRightOf)A. android.orientation 线性vertical 垂直horizontalB. android:stretchColumnsC. android:layout_alignParentRightD. android:layout_toRightOf10、定义LinearLayout 垂直方向布局时设置的属性(android:orientation vertical)A. android:layout_heightB. android:gravityC. android:layoutD. android:orientation vertical 垂直11、为了使android适应不同分辨率的机型,布局时字体单位应用(sp)A. dpB. dip 像素C. pxD. sp二、多选题1、下面属于Android的动画分类的有(AB)A. TweenB. FrameC. DrawD. Animation Property Animation属性动画2、Android关于service生命周期的onCreate()和onStart()说法正确的是( AD )A. 当第一次启动的时候先后调用onCreate()和onStart()方法B. 当第一次启动的时候只会调用onCreate()方法C. 如果service 已经启动,将先后调用onCreate()和onStart()方法D. 如果service 已经启动,只会执行onStart()方法,不在执行onCreate()方法3、在Android中使用Menu时可能需要重写的方法有(AC)A. onCreateOptionsMenu() 三种菜单:选项菜单、上下文菜单、子菜单B. onCreateMenu()C. onOptionsItemSelected()D. onItemSelected()4、Intent传递数据时,下列的数据类型哪些可以被传递(ABCD)A. SerializableB. charsequenceC. ParcelableD. Bundle5、java.io包中的( A )和( B )类主要用于对对象Object的读写。

相关文档
最新文档