Android考试题简答题总结

Android考试题简答题总结
Android考试题简答题总结

1.活动的生命周期与进程的生命周期无关;进程是各种活动可随意使用的一个容器;

2.可以在DOS命令行中调用Aandroid工具,进行开发、调试、编译、打包、部署等;

3.调用Android SDK中的工具可以可视化的在布局文件中添加、删除、视图组件,提高了开发效率;

4.src源文件夹;gen保存自动生成R资源类文件夹;assets保存原生资源文件夹;res资源文件夹;And roidManifest.xml(Android配置清单文件);default.properties(属性文件);

5.Android应用程序的代码文件:FirstActivityAct.java(活动类);R.java(资源索引类);strings.xml(声明系统中用到的字符串常量);降低耦合行;提高效率;main.xml(布局文件,声明程序中用到的视图组件); AndroidManifest.xml(全局配置文件,声明用到的组件、权限、版本;

6.Android应用程序不能直接使用编译后的类文件(.class);dx命令将java编译后的类文件(.class)转换成Dalvik虚拟机可执行的文件(.dex);

7.模拟器没有真正的数据存储设备;mksdcard命令将硬盘空间镜像为数据存储设备;

8.如何给模拟器上传资料:DDMS和DOWS命令

9. Android保存视图状态时,遍历视图层次结构中的每个视图,每发现一个有ID的视图,就调用View.o nSaveInstanceState()方法;视图状态被保存在Bundle类实例中;调用onRestoreInstanceState()方法用于恢复保存在Bundle实例中的视图状态

10.使用ListView绑定数据库查询结果

11.ContentProvider:进程在系统中将它们本身注册为某些数据类型的提供者。请求该信息时,Android 就会通过一个固定的API调用这些进程,以它们认为适合的方式查询或修改内容。ContentProvider是一个类似Activity的高级对象,需要向系统声明

12.EventProvider类,扩展ContentProvider,在重载的方法中实现了对数据记录的查询、插入、删除、更新等操作。通过EventProvider类,系统中创建了一个可以被其他程序使用的数据存储框架,其他开发人员编写的应用程序也可以使用这一框架对数据库进行访问

简答题:

1.谈谈android大众常用的五种布局。(创建启动界面的常用布局)

答:在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),Ab soluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。

(1)FrameLayout 框架布局,放入其中的所有元素都被放置在最左上的区域,而且无法为这些元素指定一个确切的位置,下一个子元素会重叠覆盖上一个子元素,适合浏览单张图片。(2)LinearLayout 线性布局,是应用程序中最常用的布局方式,主要提供控件水平或者垂直排列的模型,每个子组件都是以垂直或水平的方式来定位(默认是垂直)。(3)AbsoluteLayout 绝对定位布局,采用坐标轴的方式定位组件,左上角是(0,0)点,往右

x轴递增,往下Y轴递增,组件定位属性为android:layout_x 和android:layout_y来确定坐标。(4)RelativeLa yout 相对布局,根据另外一个组件或是顶层父组件来确定下一个组件的位置。和CSS里面的类似。(5)Tabl eLayout 表格布局,类似Html里的Table.使用TableRow来布局,其中TableRow代表一行,TableRow的每一个视图组件代表一个单元格。

2.谈谈android数据存储方式。

答:Android提供了5种方式存储数据:(1)使用SharedPreferences存储数据;它是Android提供的用来存储一些简单配置信息的一种机制,采用了XML格式将数据存储到设备中。只能在同一个包内使用,不能在不同的包之间使用。(2)文件存储数据;文件存储方式是一种较常用的方法,在Android中读取/写入文件的方法,与Java中实现I/O的程序是完全一样的,提供了openFileInput()和openFileOutput()方法来读取设备上的文件。(3)SQLite数据库存储数据;SQLite是Android所带的一个标准的数据库,它支持SQL语句,它是一个轻量级的嵌入式数据库。(4)使用ContentProvider存储数据;主要用于应用程序之间进行数据交换,从而能够让其他的应用保存或读取此Content Provider的各种数据类型。(5)网络存储数据;通过网络上提供给我们的存储空间来上传(存储)和下载(获取)我们存储在网络空间中的数据信息。

3.Android中Activity, Intent, Content Provider, Service各有什么区别。

答:Activity:活动,是最基本的android应用程序组件。一个活动就是一个单独的屏幕,每一个活动都被实现为一个独立的类,并且从活动基类继承而来。

Intent:意图,描述应用想干什么。最重要的部分是动作和动作对应的数据。

Content Provider:内容提供器,android应用程序能够将它们的数据保存到文件、SQLite数据库中,甚至是任何有效的设备中。当你想将你的应用数据和其他应用共享时,内容提供器就可以发挥作用了。Service:服务,具有一段较长生命周期且没有用户界面的程序。

4.View, surfaceView, GLSurfaceView有什么区别。

答:view是最基础的,必须在UI主线程内更新画面,速度较慢。SurfaceView 是view的子类,类似使用双缓机制,在新的线程中更新画面所以刷新界面速度比view快。GLSurfaceView 是SurfaceView的子类,opengl 专用的。

5.Adapter有什么作用?常见的Adapter有哪些?

答:Adapter是连接后端数据和前端显示的适配器接口。常见的Adapter有ArrayAdapter, BaseAdapter, Curs orAdapter, HeaderViewListAdapter, ListAdapter, ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapte r, SpinnerAdapter, WrapperListAdapter等。

6.Manifest.xml文件中主要包括哪些信息?

答:manifest:根节点,描述了package中所有的内容。uses-permission:请求你的package正常运作所需赋予的安全许可。permission:声明了安全许可来限制哪些程序能你package中的组件和功能。instrumentat

ion:声明了用来测试此package或其他package指令组件的代码。application:包含package中application

级别组件声明的根节点。activity:Activity是用来与用户交互的主要工具。receiver:IntentReceiver能使的a pplication获得数据的改变或者发生的操作,即使它当前不在运行。service:Service是能在后台运行任意时间的组件。provider:ContentProvider是用来管理持久化数据并发布给其他应用程序使用的组件。

7.根据自己的理解描述下Android数字签名。

答:(1)所有的应用程序都必须有数字证书,Android系统不会安装一个没有数字证书的应用程序。(2)And roid程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证。(3)如果要正式发布一个Android ,必须使用一个合适的私钥生成的数字证书来给程序签名,而不能使用adt插件或者ant 工具生成的调试证书来发布。 (4)数字证书都是有有效期的,Android只是在应用程序安装的时候才会检查

证书的有效期。如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能。

8.请谈一下Android系统的架构。

答:Android系统采用了分层架构,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。

9. 请描述下Activity的生命周期。

必调用的三个方法:onCreate() –> onStart() –> onResume(),用AAA表示(1)父Activity启动子Activity,子Actvity退出,父Activity调用顺序如下AAA –> onFreeze() –> onPause() –> onStop() –> onRestart() –> onStart(),onResume() …(2)用户点击Home,Actvity调用顺序如下AAA –> onFreeze() –> onPause() –> onStop() — Maybe –> onDestroy() – Maybe (3)调用finish(),Activity调用顺序如下AAA –> onPause() –> onStop() –> onDestroy() (4)在Activity上显示dialog, Activity调用顺序如下AAA (5)在父Activity上显示透明的或非全屏的activity,Activity 调用顺序如下AAA –> onFreeze() –> onPause() (6)设备进入睡眠状态,Activity调用顺序如下AAA –> onFreeze() –> onPause()

10. 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?

onSaveInstanceState() 当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()。B完成以后又会来找A,这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstanceState;而没被收回的就直接执行onResume(),跳过onCreate()了。

11. 如何将一个Activity设置成窗口的样式。

在AndroidManifest.xml 中定义Activity的地方一句话android:theme="@android:style/Theme.Dialog"或android:theme="@android:style/Theme.Translucent"就变成半透明的

12. 如何退出Activity?如何安全退出已调用多个Activity的Application?

对于单一Activity的应用来说,退出很简单,直接finish()即可。当然,也可以用killProcess()和System.exit()这样的方法。但是,对于多Activity的应用来说,在打开多个Activity后,如果想在最后打开的Activity直接退出,上边的方法都是没有用的,因为上边的方法都是结束一个Activity而已。没有办法直接结束一个应用,而只能用自己的办法间接办到。现提供几个方法,供参考:1、抛异常强制退出:该方法通过抛异常,使程序ForceClose。验证可以,但是,需要解决的问题是,如何使程序结束掉,而不弹出Force Close的窗口。2、记录打开的Activity:每打开一个Activity,就记录下来。在需要退出时,关闭每一个Activity即可。3、发送特定广播:在需要结束应用时,发送一个特定的广播,每个Activity

收到广播后,关闭即可。4、递归退出:在打开新的Activity时使用startActivityForResult,然后自己加标志,在onActivityResult中处理,递归关闭。除了第一个,都是想办法把每一个Activity都结束掉,间接达到目的。但是这样做同样不完美。你会发现,如果自己的应用程序对每一个Activity都设置了nosensor,在两个Activity结束的间隙,sensor可能有效了。但至少,我们的目的达到了,而且没有影响用户使用。为了编程方便,最好定义一个Activity基类,处理这些共通问题。

13. 请介绍下ContentProvider是如何实现数据共享的。

创建一个属于你自己的Content provider或者将你的数据添加到一个已经存在的Content provider中,前提是有相同数据类型并且有写入Content provider的权限。

14.View重绘和内存泄露的好像是面试经常问的问题

1. View的刷新:在需要刷新的地方使用handle.sendmessage发送信息,然后在handle的getmessage里面

执行invaliate或者postinvaliate .View 可以调用invalidate()和postInvalidate()这两个方法刷新 View受系统刷新(系统内部有个循环,监控事件、做业务处理、绘UI),可以用postInvali date()促使系统刷新。

2. GC内存泄露出现情况:1.数据库的cursor没有关闭 2.构造adapter时,没有使用缓存contentview 衍生listview的优化问题—–减少创建view的对象,充分使用contentview,可以使用一静态类来优化处理getview的过程/

3.Bitmap对象不使用时采用recycle()释放内存

4.activity中的对象的生命周期大

于activity 调试方法: DDMS==> HEAPSZIE==>dataobject==>[Total Size]

15.DDMS与TraceView的区别?

DDMS是一个程序执行查看器,在里面你可以看见线程和堆栈等信息,TraceView是程序性能分析器

16. 如何将打开res aw目录中的数据库文件?

在Android中不能直接打开res aw目录中的数据库文件,而需要在程序第一次启动时将该文件复制到手机内存或SD卡的某个目录中,然后再打开该数据库文件。复制的基本方法是使用getResources().openRawResource方法获得res aw目录中资源的InputStream对象,然后将该InputStream对象中的数据写入其他的目录中相应文件中。在Android SDK中可以使用SQLiteDatabase.openOrCreateDatabase方法来打开任意目录中的SQLite数据库文件。

17. Android dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念

DVM指dalivk的虚拟机。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik 虚拟机实例。而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念。

18. sim卡的EF 文件有何作用

sim卡的文件系统有自己规范,主要是为了和手机通讯,sim本身可以有自己的操作系统,EF就是作存储并和手机通讯用的

19. 什么是嵌入式实时操作系统, Android 操作系统属于实时操作系统吗?

嵌入式实时操作系统是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。主要用于工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。又可分为软实时和硬实时两种,而android是基于linux内核的,因此属于软实时。

20. 一条最长的短信息约占多少byte?

中文70(包括标点),英文160,160个字节。

21. android中的动画有哪几类,它们的特点和区别是什么?

两种,一种是Tween动画、还有一种是Frame动画。Tween动画,这种实现方式可以使视图组件移动、放大、缩小以及产生透明度的变化;另一种Frame动画,传统的动画方法,通过顺序的播放排列好的图片来实

现,类似电影。

22.handler机制的原理

andriod提供了 Handler 和 Looper 来满足线程间的通信。Handler 先进先出原则。Looper类用来管理特

定线程内对象之间的消息交换(Message Exchange)。

1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Message Queue(消息队列)。

2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到Message Queue里;或者接收Looper从Message Queue取出)所送来的消息。3) Message Queue(消息队列):用来存放线程放入的消息。

4)线程:UI thread 通常就是main thread,而Android启动程序时会替它建立一个Message Queue。23.说说mvc模式的原理,它在android中的运用

android的官方建议应用程序的开发采用mvc模式。何谓mvc?mvc是model,view,controller的缩写,mvc

包含三个部分:l模型(model)对象:是应用程序的主体部分,所有的业务逻辑都应该写在该层。l视

图(view)对象:是应用程序中负责生成用户界面的部分。也是在整个mvc架构中用户唯一可以看到的一层,接收用户的输入,显示处理结果。l控制器(control)对象:是根据用户的输入,控制用户界面数据

显示及更新model对象状态的部分,控制器更重要的一种导航功能,想用用户出发的相关事件,交给mvc

处理。android鼓励弱耦合和组件的重用,在android中mvc的具体体现如下:1)视图层(view):一般

采用xml文件进行界面的描述,使用的时候可以非常方便的引入,当然,如何你对android了解的比较的

多了话,就一定可以想到在android中也可以使用javascript+html等的方式作为view层,当然这里需

要进行java和javascript之间的通信,幸运的是,android提供了它们之间非常方便的通信实现。2)控

制层(controller):android的控制层的重任通常落在了众多的acitvity的肩上,这句话也就暗含了

不要在acitivity中写代码,要通过activity交割model业务逻辑层处理,这样做的另外一个原因是android中的acitivity的响应时间是5s,如果耗时的操作放在这里,程序就很容易被回收掉。3)模型层(model):对数据库的操作、对网络等的操作都应该在model里面处理,当然对业务计算等操作也是必须

放在的该层的。

24. 如何启用Service,如何停用Service。

1.第一种是通过调用Context.startService()启动,调用Context.stopService()结束,startService()

可以传递参数给Service 2.第二种方式是通过调用Context.bindService()启动,调用Context.unbindservice()结束,还可以通过ServiceConnection访问Service。

在Service每一次的开启关闭过程中,只有onStart可被多次调用(通过多次startService调用),其他onCreate,onBind,onUnbind,onDestory在一个生命周期中只能被调用一次。

25. 请解释下Android程序运行时权限与文件系统权限的区别。

apk程序是运行在虚拟机上的,对应的是Android独特的权限机制,只有体现到文件系统上时才使用linux

的权限设置。 android系统有的权限是基于签名的。

26、简要解释一下activity、intent 、intent filter、service、Broadcase、BroadcaseReceiver

答:一个activity呈现了一个用户可以操作的可视化用户界面一个service不包含可见的用户界面,而

是在后台无限地运行可以连接到一个正在运行的服务中,连接后,可以通过服务中暴露出来的借口与

其进行通信一个broadcast receiver是一个接收广播消息并作出回应的component,broadcast receiver没有界面 intent:content provider在接收到ContentResolver的请求时被激活。 activity, service和broadcast receiver是被称为intents的异步消息激活的。一个intent是一个Intent对象,它保存了消息的内容。对于activity和service来说,它指定了请求的操作名称和待操作数据的URI Intent对象可以显式的指定一个目标component。如果这样的话,android会找到这个component(基于manifest文件中的声明)并激活它。但如果一个目标不是显式指定的,android必须找到响应intent的最

佳component。它是通过将Intent对象和目标的intent filter相比较来完成这一工作的。一个component的intent filter告诉android该component能处理的intent。intent filter也是在manifest

文件中声明的。

27、横竖屏切换时候activity的生命周期?

1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次

2、设置Activity的android:configChanges=”orientation”时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次

3、设置Activity的android:configChanges=”orientation|keyboardHidden”时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法

28. 如何将SQLite数据库(dictionary.db文件)与apk文件一起发布?

可以将dictionary.db文件复制到Eclipse Android工程中的res aw目录中。所有在res aw目录中的文件不会被压缩,这样可以直接提取该目录中的文件。可以将dictionary.db文件复制到res aw目录中29、android 的优势与不足

Android平台手机 5大优势:一、开放性二、挣脱运营商的束缚三、丰富的硬件选择四、不受任何限制的开发商五、无缝结合的Google应用

Android的5大不足:一、安全和隐私二、首先开卖Android手机的不是最大运营商

三、运营商仍然能够影响到Android手机四、同类机型用户减少五、过分依赖开发商缺少标准配置

30. Android引入广播机制的用意?

答:a:从MVC的角度考虑(应用程序内)其实回答这个问题的时候还可以这样问,android为什么要有那4大组件,现在的移动开发模型基本上也是照搬的web那一套MVC架构,只不过是改了点嫁妆而已。android 的四大组件本质上就是为了实现移动或者说嵌入式设备上的MVC架构,它们之间有时候是一种相互依存的关系,有时候又是一种补充关系,引入广播机制可以方便几大组件的信息和数据交互。

b:程序间互通消息(例如在自己的应用程序内监听系统来电)

c:效率上(参考UDP的广播协议在局域网的方便性)

d:设计模式上(反转控制的一种应用,类似监听者模式)

31.Activity活动

一个活动就是一个用户界面屏幕;应用程序可以定义一个或多个活动,用来处理程序不同阶段中的任务;活动是应用程序生命周期的组成部分,每个活动都要保存自己的状态,以便之后还原这些状态;

32.View视图

View是Android中图形用户界面的基类,提供了可视化界面的展示;

Android图形界面展示层次:

上层:Views View(基本控件,如按钮、单复选框、菜单等)

ViewGroup(布局控件;作为容器的视图)

中层:Window(默认窗体)

底层:Activity

33.Intent意图

意图是一种描述具体动作的机制;

动作;动作对应的数据;

意图用于激活Activity、Service和Broadcast Receiver组件;

34.应用程序的生命周期

onCreate(Bundle)

首次启动活动时调用;执行一次初始化(如创建用户界面);该方法的参数可以是null或由onSaveInstanceState方法以前保存的状态信息;

onStart()

说明将要显示给用户的活动;

onResume()

用户开始与活动交互时调用;

onPause()

前台启动了一个活动,调用该方法使前一个活动进入后台运行;该方法中保存程序的持久性状态(如正在编辑的数据库记录);

onStop()

将一个不需要的活动置于停止状态;若内存不足时,系统不调用该方法,而是终止进程;

onRestart()

将已处于停止状态的活动重新显示给用户;

onDestroy()

销毁活动前调用此方法;若内存不足时,系统不调用该方法,而是终止进程;

onSaveInstanceState(Bundle)

让活动保存每个实例的状态(如光标位置);该方法无需重写,其自动保存所有用户界面控件的状态;onRestoreIntanceState(Bundle)

重新初始化某个活动;使用onSaveIntanceState()方法保存的状态作为其参数;还原用户界面的状态;35.模拟器(Emulator)的特征

支持ARM5处理器和相应的内存管理单元;支持一个16位的LCD显示屏;一个或多个键盘;具有音频输入输出;通过磁盘镜像使用闪存;一个GSM调制解调器,包括一个模拟的SIM卡;启动命令:emulator –avd

36.模拟器和真机的不同之处

不支持呼叫和接听实际来电,但可以通过控制台模拟电话呼叫(呼入和呼出)。不支持USB连接。不支持相机/视频捕捉。不支持音频输入(捕捉),但支持输出(重放)。不支持扩展耳机。不能确定连接状态。不能确定电池电量水平和交流充电状态。不能确定SD卡的插入/弹出。不支持蓝牙。

37.重要包的描述

Android.app :提供高层的程序模型、提供基本的运行环境Android.content :包含各种的对设备上的数据进行访问和发布的类Android.database :通过内容提供者浏览和操作数据库Android.graphics :底层的图形库,可以将它们直接绘制到屏幕上.Android.location :定位和相关服务的类Android.media :提供一些类管理多种音频、视频的媒体接口https://www.360docs.net/doc/b411232863.html, :提供帮助网络访问的类,超过通常的https://www.360docs.net/doc/b411232863.html,.* 接口Android.os :提供了系统服务、消息传输、IPC 机制Android.opengl :提供OpenGL 的工具Android.provider :提供类访问Android 的内容提供者Android.telephony :提供与拨打电话相关的API 交互Android.view :提供基础的用户界面接口框架Android.util :涉及工具性的方法,例如时间日期的操作Android.webkit :默认浏览器操作接口Android.widget :各种UI 元素(大部分可见)在应用程序的屏幕中使用

38.Android的相关文件类型

(1)Java文件----应用程序源文件

android 本身相当一部分都是用java 编写而成;android 的应用使用java 来开发。

(2)Class文件----Java编译后的目标文件

Google使用Dalvik 来运行应用程序;Android的class 文件是编译过程中的中间目标文件,需要链接成dex 文件才能在Dalvik 上运行。

(3)Dex文件----Android平台上的可执行文件

(4)Apk文件----Android上的安装文件:apk文件将AndroidManifest.xml文件、应用程序代码(.dex 文件)、资源文件和其他文件打成一个压缩包。

39.Android应用程序的代码文件

HelloAndroid.java(活动类);R.java(资源索引类);strings.xml(声明系统中用到的字符串常量);降低耦合行;提高效率;main.xml(布局文件,声明程序中用到的视图组件);AndroidManifest.xml(全局配置文件,

声明用到的组件、权限、版本;

40.资源文件的使用

R类:编译Android应用时,自动生成R类;该类包含系统中使用的所有资源文件的标识;

资源类:数组array、属性attr、颜色color、图片drawable、ID标识id、布局layout、字符串string;在代码中使用资源文件;在其他资源文件中引用资源文件;

41.颜色值的定义

通过RGB三原色和一个alpha (透明度)值定义;以#开始,后面是Alpha-Red-Green-Blue格式;

颜色的定义和使用

42.用户界面的设计

1.选项菜单Options Menu:活动的主菜单。通过按下设备菜单键来显示它。选项菜单包含两组菜单项:(1)图标菜单Icon Menu:这个是当用户按下菜单键时最初出现屏幕下方的item集合。它支持最多6个菜单项。只有这些菜单支持图标而且这些菜单并不支持checkboxes或者radio buttons。(2)扩展菜单Expanded Menu:这是通过按“更多”菜单显现出来的一个竖向的项目列表。它仅当图标菜单过多时存在而且是由6个以及其它选项菜单组成。

2.上下文菜单Context Menu:浮动菜单列表,通常在你长时间按在一个视图上时出现(比如一个列表项)

3.子菜单Submenu:浮动菜单列表,通过在选项菜单或上下文菜单选择菜单项显露出来。不支持嵌套子菜单。

43.用户界面布局方式

AbsoluteLayout-绝对布局、FrameLayout-帧布局、GridView-网格视图、LinearLayout-线性布局、ListLayout-列表布局、RadioGroup-单选组、TableLayout-表格布局、RelativeLayout-相对布局FrameLayout帧布局:从屏幕的左上角(0,0)坐标开始布局,多个组件层叠排序,后面的组件覆盖前面的组件;所有子元素都钉到屏幕的左上角;不能为子元素指定位置

TableLayout:子元素放入到行与列中;不显示行、列或是单元格边界线;单元格不能横跨行,如HTML 中一样

AbsoluteLayout绝对布局:指明子元素确切的屏幕(X,Y)坐标:(0,0)是左上角,下移或右移时,坐标值增加;允许元素重叠(但是不推荐)注意:一般建议不使用AbsoluteLayout 除非你有很好的理由来使用它;因为它相当严格并且在不同的设备显示中不能很好地工作;Android 2.0 API文档中标示该类已过期,可以使用帧布局或者相对布局代替

RelativeLayout相对布局:让子元素指定它们相对于其他元素的位置(通过ID 来指定)或相对于父布局对象,跟AbsoluteLayout这个绝对坐标布局是个相反。

44.字体风格

字体(4种):BOLD、BOLD_ITALIC、ITALIC、NORMAL

粗体、粗斜体、斜体、普通字体

风格(5种):DEFAULT、DEFAULT_BOLD、MONOSPACE、SANS_SERIF、SERIF

默认字体、默认粗体、单间隔字体、无衬线字体、衬线字体

45.Android菜单

android提供了三种菜单类型,分别为options menu,context menu,sub menu(子菜单)。

options menu(主菜单)就是通过按home键来显示,

context menu(右键菜单)在view上按上2s后显示

两种menu都有可以加入子菜单,子菜单中不能嵌套子菜单。

Submenu(子菜单):一个浮动菜单列表,通过在选项菜单或上下文菜单选择菜单项显露出来。不支持嵌套子菜单。

1.添加主菜单:第一步:定义字符串资源\res\values\strings.xml;第二步:定义菜单资源res\menu\menu.xml;第三步:在Sudoku类中创建菜单:导入以下菜单相关的包:import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;重写Sudoku 类中的onCreateOptionsMenu( )第四步:定义菜单点击事件,选择settings菜单,调用onOptionItemSelected()执行Prefs类。

2.添加设置:定义Prefs类,继承自PreferenceActivity类;addPreferencesFromResource()方法从XML 文件中读取设置定义,并将其解压缩至当前活动视图中;在AndroidManifest.xml文件中注册Prefs活动

46.进程优先级

①前台进程(Active Process):前台Activity、包含正在运行的广播接收器、正在运行的服务②可视进程(Visible Process):包含一个可视化的Activity③服务进程(Started Service Process):包含一个被开启的服务(处理服务,不是直接可视,例如媒体播放器,网络上传、下载)④后台进程(Background Process):包含一个不可视的Activity(可以在任意时刻杀死该进程来回收内存)⑤空进程(Empty Process):没有持有任何应用程序组件

47.Activity状态及转换

①active:当一个Activity 在屏幕的最上层时(对堆栈的最顶端),它就是属于active 或者running 的状态

②paused:如果一个Activity 失去焦点(focus)但还看得到它的画面(比如:一个新的Activity 画面并不是全屏幕或者它是一个半透明的情况),那失去焦点的Activity 则处在paused 的状态。

③stop:如果一个Activity 被其它的Activity 完全的遮盖住时,它仍然保有全部的状态及数据,但因为它已不再被使用者看见,所以它的画面是被隐藏起来的(画面不需要更新),当系统内存不足时,这种stop 状态的Activity 时最先被系统考虑拿下来释放内存的。

④ finish:当一个Activity 处于pause 或stop 的状态时,系统可以要求Activity 结束(finish)或直接移除(kill)它。当它需要再度呈现在使用者面前时,它必须要能完整的重新启动及回复先前的状态。

48.服务的生命周期

startService():启动服务,直到调用stoptService(),或者Service调用stopSelf()停止。bindService():Service和调用bindService()的进程同生共死,也就是说当调用bindService()的进程死了,那么它bind 的Service 跟着结束,期间可以调用unbindService()解除绑定让Service 结束

两种方式混合使用。

49.Intent与IntentFilter

Intent 是描述应用想要做什么,Intent 数据结构两个最重要的部分是:(1)动作:典型的动作类型有:MAIN(活动的门户)、VIEW、PICK、EDIT等。(2)动作对应的数据:以URI 的形式进行表示。Android 使用了Intent 这个特殊类,实现在屏幕与屏幕之间移动。Intent 类用于描述一个应用将会做什么事。intentfilter 则用于描述一个activity(或者IntentReceiver)能够操作哪些intent。

一个activity 如果要显示一个人的联系方式时,需要声明一个IntentFilter,这个IntentFilter 要知道怎么去处理VIEW 动作和表示一个人的URI。IntentFilter 需要在AndroidManifest.xml 中定义。50.IntentReceiver

IntentReceiver 在AndroidManifest.xml 中注册,也可在代码中使用Context.registerReceiver()进行注册。当一个intentreceiver 被触发时,应用不必对请求调用intentreceiver,系统会在需要的时候启

动你的应用。各种应用还可以通过使用Context.broadcastIntent()将自己的intentreceiver 广播给其它应用程序。

51.Content Provider

Content provider为Android应用程序提供数据共享机制。

Android 本地Content Provider 包括:CallLog:地址和接收到的电话信息;Contact.People.Phones:存储电话号码;Setting.System:系统设置和偏好设置

52.设计用户界面的方法

过程性设计:指用代码设计用户界面(Java代码);

声明性设计:不涉及任何代码(XML描述符);

53.音频播放

(1)从源文件中播放:1)在项目的res/raw文件夹下放置一个Android支持的文件,如MP3;2)创建一个MediaPlayer实例,可以使用MediaPlayer的静态方法create()来完成;3)调用start()方法开始播放,调用pause()暂停播放,调用stop()方法停止播放;如果要重复播放,在调用start()方法前,必须调用reset()方法和prepare()方法

(2)从文件系统中播放:1)实例化一个MediaPlayer;2)调用setDataSource()方法设置播放文件路径;3)先调用prepare(),然后调用start()方法播放

(3)从网络中播放:方法一1)创建URI实例;2)根据一个MediaPlayer实例,使用MediaPlayer的静态方法create(),通过传递URI参数完成;3)调用start()方法开始播放方法二1)实例化一个MediaPlayer;2)调用setDataSource()方法设置想要播放文件的路径,网络上的可用路径;3)先调用prepare(),然后调用start()播放

54. 访问内部文件系统和访问SD卡

(1)Android基于Linux,系统中也有一个真实的文件系统,包含根目录和其他各种文件目录;文件系统的存储介质是设备的内置闪存;默认情况下,Android应用程序只能访问私有目录下的文件(data/data/包名),由于权限的限制,程序的进程不能破坏其他应用程序的数据;Context类提供了文件访问的方法,开发人员利用这些方法能够实现从文件系统读取数据并向文件系统写入数据;所有活动的父类Activity继承自Context类,在活动中也可以调用Context类的方法;

deleteFile():删除一个私有文件。操作成功返回true,否则返回false

fileList():以Sting数组的形式返回该应用程序私有目录中所有文件的列表

openFileInput():打开一个用于读取的私有文件,其返回值为java.io.FileInputStream openFileOutput():打开一个用于写入的私有文件,返回值为java.io.FileOutputStream

(2)内部闪存容量有限,保存较少数据;尽量使用SD卡存储空间;SD卡存储空间大,适合存储较大的文件,如音频、视频等多媒体信息;SD卡不能用于存放代码;应用程序可以从SD卡读取文件,也可以向SD 卡写入文件。

55.android中的布局资源

一.android中的资源是在代码中使用的外部文件。图片,音频,动画和字符串等叫做android中的资源文件。

二.Android工程资源类型布局表

与src源文件夹并列的两个文件夹assets和res用来保存资源文件。

1.assets文件夹中放原声文件如MP3文件,通过AssetManager类以二进制流的形式访问

2.res中资源可以通过R资源类直接访问:

anim:保存动;drawable:位图文件; layout:xml布局文件

values:各种xml资源文件

arrays.xml:xml数组文件;colors.xml:xml颜色文件;dimens.xml:xml尺寸文件styles.xml:xml样式文件; raw:直接复制到设备中的源文件; menu:xml菜单文件

使用mContext.getResources()得到Resources对象来获取资源

1、颜色 #RGB #ARGB #RRGGBB #AARRGGBB

颜色资源应该位于标签下

路径res/values/colors.xml 名字可以随意

定义value

使用 Resourse.getValues.getColor

#FFFFFF

#000000

2、字串

字串资源应该位于标签下

路径res/values/strings.xml

定义value

使用 Resourse.getValues.getString

Hello World, ResrouseTestActivity!

ResrouseTest

3、图片

图片资源一般使用png格式,使用其他格式的会出现各种问题,貌似不支持gif格式的图片,可是使用Movie 来播放gif格式的图片

路径res/drawable

可以直接存放图片也可以是xml等配置文件(一般用于自定义组件)

使用 getDrawable

4、图片的颜色

位于res/values/my_drawable.xml名字随意

#FF0000

定义用于填充一个组件的颜色值,即给view设置背景色。用法和drawable下的图片一样,其实没多少意义,使用颜色定义就ok了,目前我是这样认为的,可能有更好的优点,不过我没发现罢了,嘿嘿,continue...

5、单位资源

单位资源应该位于标签下

路径res/values/dimen.xml 名字可以随意

使用和String、color类似

2px

5px

3pt

3dp

56. ContentProvider 是如何向外界提供数据的?

Android提供了ContentProvider,一个程序可以通过实现一个ContentProvider的抽象接口将自己的数据完全暴露出去,而且ContentProviders是以类似数据库中表的方式将数据暴露,也就是说ContentProvider 就像一个“数据库”。那么外界获取其提供的数据,也就应该与从数据库中获取数据的操作基本一样,只不过是采用URI来表示外界需要访问的“数据库”。

ContentProvider 是如何组织数据的?

组织数据主要包括:存储数据,读取数据,以数据库的方式暴露数据。数据的存储需要根据设计的需求,选择合适的存储结构,首选数据库,当然也可以选择本地其他文件,甚至可以是网络上的数据。数据的读取,以数据库的方式暴露数据这就要求,无论数据是如何存储的,数据最后必须以数据的方式访问。

Android期末考试复习试卷(仅供参考)

一、选择题(20分,每小题2分) 1、下列不是手机操作系统的是( D )。 A Android B Window Mobile C Apple IPhone IOS D Windows Vista 2、下列选项哪个不是 Activity 启动的方法(B ) A startActivity B goToActivity C startActivityForResult D startActivityFromChild 3、下列哪个不是 Activity 的生命周期方法之一(B ) A onCreate B startActivity C onStart D onResume 4、下列哪个可做 Android 数据存储(A ) A SQlite B M ySql C Oracle D DB2 5、下列哪个可做EditText编辑框的提示信息( D ) A android:inputType B android:text C android:digits D android:hint 6、Math.ceil(99.1) 的结果是(B ) A 99 B 100 C 99.1 D 99.0 7、android 中下列属于Intent的作用的是(C) A实现应用程序间的数据共享 B是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失 C可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带 D处理一个应用程序整体性的工作 8、关于 res/raw 目录说确的是A A这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B这里的文件是原封不动的存储到设备上会转换为二进制的格式 C这里的文件最终以二进制的格式存储到指定的包中 D这里的文件最终不会以二进制的格式存储到指定的包中 9、Math.round(11.5)等于多少(). Math.round(-11.5)等于多少( C) A 11 ,-11 B 11 ,-12 C 12 ,-11 D 12 ,-12 10、我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(A ) A onDestroy() B onClear() C onFinish() D onStop() 二、填空题(10 分,共10 题,每空1 分) 1、为了使 android 适应不同分辨率机型,布局时字体单位应用( sp ),像素单位应用( sp )和(dip ) 2、定义 LinearLayout 水平方向布局时至少设置的三个属性: ( android:orientation), (android:layout width)和(android:layout height)

《传感器本》试题整理(附参考答案)

《传感器本》试题整理(附参考答案)

上海开放大学《传感器与测试基础》复习 1. 课程教材:《自动检测技术及应用》梁森(第2版),机械工业出版社 2. 网上课堂:视频资料,课程ppt资料,李斌 教授主讲 3. 主持教师联系方式: 25653399(周二、五);xudanli@https://www.360docs.net/doc/b411232863.html, 4. 期末考试比例(大约):单项选择20分;填 空20分;多项选择12分;简答题26分;分析 设计题22分。 5. 复习样题 一、填空题 1. 传感器的特性一般指输入、输出特性,有 动、静之分。静态特性指标的 有、、、 等。(灵敏度、分辨力、线性度、迟滞误差、 稳定性) 2. 对于测量方法,从不同的角度有不同的分类, 按照测量结果的显示方式,可以分为模拟式测量和数字式测量。 3. 对于测量方法,从不同的角度有不同的分类, 按照是否在工位上测量可以分为在线测量和离线式测量。 4. 对于测量方法,从不同的角度有不同的分类,

按照测量的具体手段,可以分为 偏位式测 量 、 微差式测量 和 零位式测量 。 5.某0.1级电流表满度值100m x mA ,测量60mA 的绝 对误差为 ±0.1mA 。 6、服从正态分布的随机误差具有如下性质 集 中性 、 对称性 、 有界性 。 7. 硅光电池的光电特性中,当负载短路时,光 电流在很大范围内与照度与呈线性关系。 8. 把被测非电量的变化转换成线圈互感变化的 互感式传感器是根据 变压器 的基本 原理制成的,其次级绕组都用 差动 形式连接,所以又叫差动变压器式传感器。 9、霍尔传感器的霍尔电势U H 为 K H IB 若改变 I 或 B 就能得到变化的霍尔电势。 10、电容式传感器中,变极距式一般用来测量 微 小 的位移。 11. 压电式传感器具有体积小、结构简单等优 点,但不适宜测量 频率太低 的被测量, 特别是不能测量 静态值 。 12、差动电感式传感器与单线圈电感式传感器相 比,线性 好 灵感度提高 一 倍、 测量精度高。 13、热电偶冷端温度有如下补偿方法: 冷端恒温法(冰浴法)、计算修正法、电桥补偿法和仪表

Android期末测试题(附带答案)

一、选择题 1、下列哪项不是Android四大组件( C ) A.Seivice B. Activity C. Handler D. Content Provider 2、Android是如何组织Activity的( B ) A.以堆的方式组织Activity B. 以栈的方式组织Activity C. 以树形方式组织Activity D. 以链式方式组织Activity 3、关于线程说法不正确的是( B ) A. 在 android 中,我们可以在主线程中,创建一个新的线程 B. 在创建的新线程中,它可以操作 UI 组件 C. 新线程可以和 Handler 共同使用 D. 创建的 Handler 对象,它隶属于创建它的线程 4、下列关于内存回收的说明,哪个是正确的(B ) A.程序员必须创建一个线程来释放内存 B.内存回收程序负责释放无用内存 C.内存回收程序允许程序员直接释放内存 D.内存回收程序可以在指定的时间释放内存对象 5、设置xml布局文件中的字体大小一般用什么单位( c ) A.dp B. px C. sp D. pt 6、关于service生命周期的onCreate()和onStart()说法正确的是( D ) A.当第一次启动的时候先后调用onCreate()和onStart()方法 B.当第一次启动的时候只会调用onCreate()方法 C.如果service已经启动,将先后调用onCreate()和onStart()方法 D.如果service已经启动,只会执行onStart()方法,不再执行onCreate()方法 7、Android项目工程下面的assets目录,以下说法正确的是( A ) A.这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B.主要放置多媒体等数据文件 C.主要放置图片文件 D.放置字符串,颜色,数组等常量数据 8、在android中使用SQLiteOpenHelper这个辅助类,生成一个可操作的数据库,调用的方法是( A )A.getReadableDatabase() B.getDatabase() C.getEnbleDatabase() D.createDateBase() 9、Activity从可见状态变为半透明遮盖状态时,生命周期中哪个方法被调用( B )

传感器考试题简答题

三.简答题(每题10分) 301、试述传感器的定义、共性及组成。 301答:①传感器的定义:能感受被测量并按照一定规律转换成可用输岀信号的器件或装置;②传感器的共性:利用物理定律和物质的物理、化学或生物特性,将非电量(如位移、速度、加速度、力等)转换为电量(电压、电流、电容、电阻等); ③传感器的组成:传感器主要由敬感元件和转换元件组成。 302、什么是传感器动态特性和静态特性?简述在什么条件下只研究静态特性就能够满足通常的需要。 302答:传感器的动态特性是指传感器对动态激励(输入)的响应(输出)特性,即其输出对随时间变化的输入量的响应特性。 传感器的静态特性是指它在稳态(静态或准静态)信号作用下的输入一输出关系。 静态特性所描述的传感器的输入.输岀关系式中不含有时间变量。 当输入量为常量或变化极慢时只研究静态特性就能够满足通常的需要。 303、简述在什么条件下需要研究传感器的动态特性?实现不失真测量的条件是什么? 303答:当输入量随时间变化时一般要研究传感器的动态特性。 实现不失真测量的条件是 幅频特性:AW)二|H(jco) | =A(常数) 相频特性:6(3)二-3t(线性)° 304、什么叫应变效应?利用应变效应解释金属电阻应变片的工作原理。 304答:材料的电阻变化是由尺寸变化引起的,称为应变效应。 应变式传感器的基本工作原理:当被测物理量作用在弹性元件上,弹性元件在力、 力矩或压力等作用下发生形变,变换成相应的应变或位移,然后传递给与之相连的应变片,将引起应变敏感元件的电阻值发生变化,通过转换电路变成电量输岀。输出的电量大小反映了被测物理量的大小。 303、试简要说明使电阻应变式传感器产生温度误差的原因,并说明有哪儿种补偿方法。 看:温度误差产生原因包括两方面:305. 温度变化引起应变片敏感栅电阻变化而产生附加应变,试件材料与敏感栅材料的线膨胀系数不同,使应变片产生附加应变。 温度补偿方法基本上分为桥路补偿和应变片自补偿两大类。 311.根据电容式传感器工作原理,可将其分为几种类型?每种类型各有什么特点?各适用于什么场合? 311、答:根据电容式传感器的工作原理,可将其分为3种:变极板间距的变极距型、变极板覆盖面积的变面积型和变介质介电常数的变介质型。 变极板间距型电容式传感器的特点是电容量与极板间距成反比,适合测量位移量。 变极板覆盖面积型电容传感器的特点是电容量与面积改变量成正比,适合测量线位移和角位移。 变介质型电容传感器的特点是利用不同介质的介电常数各不相同,通过改变介质的介电常数实现对被测量的检测,并通过电容式传感器的电容量的变化反映出来。适合于介质的介电常数发生改变的场合。 313.试说明什么电容电场的边缘效应?如何消除?

传感器简答题

1:简述金属电阻应变片的工作原理,主要测量电路种类及其应用情况 应变式传感器是利用金属的电阻应变效应,将测量物体变形转换成电阻变化的传感器。被广泛应用于工程测量和科学实验中。 一工作原理 (一)金属的电阻应变效应当金属丝在外力作用下发生机械变形时,其电阻值将发生变化,这种现象称为金属的电阻应变效应。如图2-1所示 设有一根长度为l、截面积为S、电阻率为ρ的金属丝,在未受力时,原始电阻为 (2-1) 当金属电阻丝受到轴向拉力F作用时,将伸长Δl,横截面积相应减小ΔS,电阻率因晶格变化等因素的影响而改变Δρ,故引起电阻值变化ΔR。对式(2-1)全微分,并用相对变化量来表示,则有: (2-2) 式中的Δl/l为电阻丝的轴向应变,用ε表示,常用单位με(1με=1×10-6mm/mm)。若径向应变为Δr/r,电阻丝的纵向伸长和横向收缩的关系用 泊松比μ表示为,因为ΔS/S=2(Δr/r),则(2-2)式可以写成 (2-3) 式(2-3)为“应变效应”的表达式。k0称金属电阻的灵敏系数,从式(2-3)可见,k0受两个因素影响,一个是(1+2μ),它是材料的几何尺寸变化引起的,另一个是Δρ/(ρε),是材料的电阻率ρ随应变引起的(称“压阻效应”)。对于金属材料而言,以前者为主,则k0≈1+2μ,对半导体,k0 值主要是由电阻率相对变化所决定。实验也表明,在金属电阻丝拉伸比例极限内,电阻相对变化与轴向应变成正比。通常金属丝的灵敏系数k0=2左右。 (二)应变片的基本结构及测量原理 各种电阻应变片的结构大体相同,以图2-2所示丝绕式应变片为例,它以直径为0.025mm左右的合金电阻丝2绕成形如栅栏的敏感栅,敏感栅粘贴在绝缘的基底1上,电阻丝的两端焊接引出线4,敏感栅上面粘贴有保护用的覆盖层3。l称为应变片的基长,b称为基宽,l×b称为应变片的使用面积。应变片的规格以使用面积和电阻值表示,例如3×10mm2,120Ω。 用应变片测量受力应变时,将应变片粘贴于被测对象表面上。在外力作用下,被测对象表面产生微小机械变形时,应变片敏感栅也随同变形,其电阻值发生相应变化。通过转换电路转换为相应的电压或电流的变化,根据式(2-3),可以得到被测对象的应变值ε,而根据引力应变关系 б=Eε(2-4) 式中б——测试的应力;

android考试复习题

一、解答题 1.Android应用程序的4大组件是什么? Activity、Broadcast Receiver、Content Provider、Service 2.请介绍下Android中常用的五种布局。 相对布局(RelativeLayout):相对布局中可以设置某一个视图相对于其他视图的位置,包括上、下、左、右。 线性布局(LinearLayout):线性布局可分为水平线性布局和垂直线性布局。水平线性布局所有在这个布局中的视图都沿着水平方向线性排列。垂直线性布局则沿着垂直方向线性排列。 框架布局(FrameLayout):所有添加到框架布局中的视图都是以层叠的方式显示,这种显示方式类似堆栈。 表格布局(TableLayout):表格布局可以将视图按行、按列进行排列。 绝对布局(AbsoluteLayout):可以任意设置视图定位位置。 3. activity一般会重载7个方法用来维护其生命周期,除了 onCreate(),onStart(),onDestory() 外还有onrestart,onresume,onpause,onstop 4. 当启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行的回调函数是startActivityResult() 5.什么是Intent? Intent(意图)主要是解决Android应用的各项组件之间的通讯。 Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。 启动Activity方式: 显式启动,必须在Intent中指明启动的Activity所在的类 Intent intent = new Intent(IntentDemo.this, ActivityToStart.class); startActivity(intent); 6.Broadcast有哪几种?区别? 实现广播的方法有两种。一种是在androidmanifest.xml当中去注册广播,另一种方法是在代码中动态注册广播,这两种方法虽然都能实现广播机制,但是还是有很大不同,所以运用也要分情况。如果我们在androidmanifest.xml中去定义的话,那么该广播是在activity 结束之后也不会结束的,原因在于它已经写在了manifest.xml文件当中,也就是注册到了系统当中,所以无论你的activity是否存在,对于该广播没有影响。而在java代码中动态注册广播,在该activity结束后,我们可以注销该广播,也就是它随着activity的消失而消失 7. Adapter有什么作用?常见的Adapter有哪些? 答:Adapter是连接后端数据和前端显示的适配器接口。常见的Adapter有ArrayAdapter, BaseAdapter, CursorAdapter, HeaderViewListAdapter, ListAdapte r, ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapter, SpinnerAdapte r, WrapperListAdapter等。

传感器题库及答案

第一章检测技术的基本概念 一、填空题: 1、传感器有、、组成 2、传感器的灵敏度是指稳态标准条件下,输出与输入的比值。 3、从输出曲线看,曲线越陡,灵敏度。 4、下面公式是计算传感器的。 5、某位移传感器的输入变化量为5mm,输出变化量为800mv,其灵敏度为。 二、选择题: 1、标准表的指示值100KPa,甲乙两表的读书各为 KPa和 KPa。它们的绝对误差为。 A 和 B 和 C 和 2、下列哪种误差不属于按误差数值表示。 A绝对误差 B相对误差 C随机误差 D引用误差 3、有一台测量仪表,其标尺范围0—500 KPa,已知绝对误差最大值 P max=4 KPa,则该仪表的精度等级。 A 级 B 级 C 1级 D 级 4、选购线性仪表时,必须在同一系列的仪表中选择适当的量程。应选购的仪表量程为测量值的 倍。 A3倍 B10倍 C 倍 D 倍 5、电工实验中,常用平衡电桥测量电阻的阻值,是属于测量, 而用水银温度计测量水温的微小变化,是属于测量。 A偏位式 B零位式 C 微差式 6、因精神不集中写错数据属于。 系统误差 B随机误差 C粗大误差 7、有一台精度级,测量范围0—100 KPa,则仪表的最小分格。 A45 B40 C30 D 20 8、重要场合使用的元件或仪表,购入后进行高、低温循环老化试验,目的是为了。 A提高精度 B加速其衰老 C测试其各项性能指标 D 提高可靠性 9、传感器能感知的输入量越小,说明越高。 A线性度好 B迟滞小 C重复性好 D 分辨率高 三、判断题 1、回差在数值上等于不灵敏度 ( ) 2、灵敏度越大,仪表越灵敏() 3、同一台仪表,不同的输入输出段灵敏度不同() 4、灵敏度其实就是放大倍数() 5、测量值小数点后位数越多,说明数据越准确() 6、测量数据中所有的非零数字都是有效数字() 7、测量结果中小数点后最末位的零数字为无效数字() 四、问答题 1、什么是传感器的静态特性,有哪些指标。 答:指传感器的静态输入、输出特性。有灵敏度、分辨力、线性度、迟滞、稳定性、电磁兼容性、可靠性。

(完整版)Android应用开发期末考试题

试题 一、选择题 1 android虚拟设备的缩写是(AVD) 2 Android SDK目前支持的操作系统(DOS) 3 Android开发工具插件(ADT)没有提供的开发功能(自动更新) 4Android SDK提供一些开发工具可以把应用软件打包成Android格式文件(APK) 5 Android当中基本的所有的UI都是由(view)或者其子类实现的 6以下不是Android中调试项目的正确步骤(测试用例) 7下列不是Activity的生命周期方法之一的是(OnResume) 8以下可以做EditText编辑框的提示信息是(adroid:hint) 9以下不是Activity启动的方法是(gotoActivity) 10以下不是手机操作系统的是(windows vista) 二、填空题 1 Android平台由操作系统,中间件,用户界面和应用软件组成的。 2 Android平台提供了2D,3D的图形支持,数据库支持SQLite,并且集成了浏览器 3目前已知的可以用来搭建Android开发环境的系统有windows,Linux,Mac 等4开发中推荐使用的IDE开发组合为IDE,eclipse,ADI来开发 5 Android SDK主要以java语言为基础 6创建工程时需要填写的信息名称有工程名,包的名字,Activity的名字还有应用的名字

7 Android.jar是一个标准的压缩包,其内容包含的是编译后的class,包含了全部的API 三、简答题 1 Android SDK中API的包结构的划分?至少五个 android.util,android.os,android.content,android.view,android.graphics,android.text 2 Android软件框架结构自上而下可分为哪些层? 应用程序(Application)、应用程序框架(Application Framework)、各种库(Libraries)和Android运行环境(RunTime)、操作系统层(OS) 3 Android应用程序的4大组件是什么? Activity、Broadcast Intent Receiver、Service、Content Provider 4 Android应用工程文件结构有哪些? 源文件(包含Activity),R.java文件,Android Library,assets目录res目录,drawble目录,layout目录,values目录,AndroidManifest.xml 5 Android开发应用程序最有可能使用到的应用框架部分是哪些? 一组View(UI)组件,Content Providers,Resource Manger,Notification Manger,Activiy Manger 6 Android底层库包含哪些? 系统C库,媒体库,Surface Manager,LibWebCore,SGL 四、编程 1实现点击一个按钮,结束当前Activity并将需要返回的数据放置并关闭当前窗体请编写核心代码 Bundle bundle = new Bundle ( ); Bundle.putString(“store”,”数据来自Activity1”) ;

android考试选择题复习进程

1、在android程序中,Log.w()用于输出什么级别的日志信息?( C) A、调试 B、信息 C、警告 D、错误 2、在Activity中需要找到一个id是bookName的的TextView组件,下面哪种语句写法是正确的?( C) A、TextView tv = this.findViewById(R.id.bookName); B、TextView tv = (TextView)this.findViewById(R.id.code); C、TextView tv = (TextView)this.findViewById(R.id.bookName); D、TextView tv = (TextView)this.findViewById(R.string.bookName); 3、如果将一个TextView的android:layout_height属性值设置为wrap_content,那么该组件将是以下哪种显示效果?( D) A、该文本域的宽度将填充父容器宽度 B、该文本域的宽度仅占据该组件的实际宽度 C、该文本域的高度将填充父容器高度 D、该文本域的高度仅占据该组件的实际高度 4、给一个TextView设置红色字体,应该使用以下哪种写法?(A ) A、setTextColor(0xffff0000); B、setColor("0xffff0000") C、setTextColor("0xffff0000") D、setColor("red") 5、对于一个Activity,在AndroidManifest.xml中对他这样进行定义 ,这样的描述代表什么含义?(B) A、无明确含义,每个Activity都需要这样定义 B、代表该Activity将作为程序的主Activity,并且在LAUNCHER菜单中启动 C、代表该Activity将在桌面上建立图标并启动 D、代表该Activity的优先级高于其他的Activity 6、在Android应用程序中,图片应放在那个目录下?(D ) A、raw B、values C、layout D、drawable 7、关于AndroidManifest.xml文件,以下描述错误的选项有哪些?(A ) A、在所有的元素中只有是必需的,且只能出现一次 B、处于同一层次的元素,不能随意打乱顺序 C、元素属性一般都是可选的,但是有些属性是必须设置的

传感器技术期末考试简答题

传感器技术期末考试简 答题 标准化工作室编码[XX968T-XX89628-XJ668-XT689N]

四、简答题(4题,共18分) 301、试述传感器的定义、共性及组成。 答:①传感器的定义:能感受被测量并按照一定规律转换成可用输出信号的器件或装置;②传感器的共性:利用物理定律和物质的物理、化学或生物特性,将非电量(如位移、速度、加速度、力等)转换为电量(电压、电流、电容、电阻等);③传感器的组成:传感器主要由敏感元件和转换元件组成。 302、什么是传感器动态特性和静态特性简述在什么条件下只研究静态特性就能够满足通常的需要。 答:传感器的动态特性是指传感器对动态激励(输入)的响应(输出)特性,即其输出对随时间变化的输入量的响应特性。 传感器的静态特性是指它在稳态(静态或准静态)信号作用下的输入-输出关系。静态特性所描述的传感器的输入、输出关系式中不含有时间变量。 当输入量为常量或变化极慢时只研究静态特性就能够满足通常的需要。 304、什么叫应变效应?利用应变效应解释金属电阻应变片的工作原理。 答:材料的电阻变化是由尺寸变化引起的,称为应变效应。 应变式传感器的基本工作原理:当被测物理量作用在弹性元件上,弹性元件在力、力矩或压力等作用下发生形变,变换成相应的应变或位移,然后传递给与之相连的应变片,将引起应变敏感元件的电阻值发生变化,通过转换电路变成电量输出。输出的电量大小反映了被测物理量的大小。 306、在传感器测量电路中,直流电桥与交流电桥有什么不同,如何考虑应用场合用电阻应变片组成的半桥、全桥电路与单桥相比有哪些改善答:直流电桥适合供电电源是直流电的场合,交流电桥适合供电电源是交流的场合。半桥电路比单桥电路灵敏度提高一倍,全桥电路比单桥电路灵敏度提高4倍,且二者均无非线性误差。 311、根据电容式传感器工作原理,可将其分为几种类型每种类型各有什么特点各适用于什么场合 答:根据电容式传感器的工作原理,可将其分为3种:变极板间距的变极距型、变极板覆盖面积的变面积型和变介质介电常数的变介质型。 变极板间距型电容式传感器的特点是电容量与极板间距成反比,适合测量位移量。 变极板覆盖面积型电容传感器的特点是电容量与面积改变量成正比,适合测量线位移和角位移。 变介质型电容传感器的特点是利用不同介质的介电常数各不相同,通过改变介质的介电常数实现对被测量的检测,并通过电容式传感器的电容量的变化反映出来。适合于介质的介电常数发生改变的场合。 316、何谓电涡流效应怎样利用电涡流效应进行位移测量 答::电涡流效应指的是这样一种现象:根据法拉第电磁感应定律,块状金属导体置于变化的磁场中或在磁场中作切割磁力线运动时,通过导体的磁通将发生变化,产生感应电动势,该电动势在导体内产生电流,并形成闭合曲线,状似水中的涡流,通常称为电涡流。 利用电涡流效应测量位移时,可使被测物的电阻率、磁导率、线圈与被测物的尺寸因子、线圈中激磁电流的频率保持不变,而只改变线圈与导体间的距离,这样测出的传感器线圈的阻抗变化,可以反应被测物位移的变化。 317、试比较自感式传感器与差动变压器式传感器的异同。 答: (1)不同点: 1 )自感式传感器把被测非电量的变化转换成自感系数的变化; 2)差动变压器式传感器把被测非电量的变化转换成互感系数的变化。 (2)相同点:两者都属于电感式传感器,都可以分为气隙型、气隙截面型和螺管型。 323、什么是正压电效应什么是逆压电效应什么是纵向压电效应什么是横向压电效应 答:正压电效应就是对某些电介质沿一定方向施以外力使其变形时,其内部将产生极化现象而使其出现电荷集聚的现象。 当在片状压电材料的两个电极面上加上交流电压,那么压电片将产生机械振动,即压电片在电极方向上产生伸缩变形,压电材料的这种现象称为电致伸缩效应,也称为逆压电效应。 沿石英晶体的x轴(电轴)方向受力产生的压电效应称为"纵向压电效应"。沿石英晶体的y轴(机械轴)方向受力产生的压电效应称为"横向压电效应"。 331、简述热电偶的几个重要定律,并分别说明其实用价值。 答:1、中间导体定律;2、标准电极定律;3、连接导体定律与中间温度定律 实用价值:略。

安卓实训总结报告

安卓实训总结报告 安卓实训的总结与体会【1】 不知不觉中为期三周的实训已经接近尾声。 虽然时间很短,不过我确实学到了一些我觉得有用的东西,并且是平时上课学不到的东西。 三周的实训,时间很短,确实很短。 原本刚开始,乃至之前听说有为期三周的实训的时候,都觉得,这样的实训不过就是走过场罢了,只有三周的时间,能学到什么东西呢?所以一开始也没当回事。 就这样,带着这样的心态,开始了实训。 安卓实训。 因为第一天周一上午没有课,下午,才算是正式开始了三周的实训。 一开始听老师讲课的时候,感觉很舒服啊,噼里啪啦一讲一堆,不过我就喜欢这样的,听着爽啊。 平时老师上课的时候都是讲一句顿一顿,或者一句话反复琢磨半天,这样的话,虽然老师的出发点是好的,是为了让学生更容易理解,但这样的话,教学的整体进度就下来了。 而且就算是一个知识点反复讲,也不见得能就精通了这个东西,或者说对这个有多么理解。 反而容易让学生产生一种懈怠的情绪。 一、第一件事:说话做事要有真凭实据

而这样一开始,老师就给我一种耳目一新的感觉:这老师上课带劲啊!不过也就仅此而已了。 老师花了一下午的时间着重介绍了老师所在的公司,以及我们接下来三周的实训计划。 接下来一周实训之后,这个实训在老师的刻意营造下,尽量模仿公司的氛围。 而让我感受最受的就是:凭事实说话。 就是无论要下什么结论的时候,都要拿得出能够说服人的数据。 这是我在第一周中感受最深的一件事。 也是我学到的第一件事。 说话下结论要有真凭实据。 二、第二件事:专业技术的不断学习 在这一周中,老师着重讲了如何进行系统构架。 因为之前也跟老师做过项目,所以对进行系统构架的理解要稍微深入些,对其重要性的了解也要多一些。 这样,在老师的讲解下,再和我以前的理解相互验证,感觉就像武功高手,在前辈的点拨下顿悟了一样。 这就是我学到的第二件事,是在专业技能方面的收获。 三、第三件事:学会寻找动力 然后在接下来的一周中,这样的学习中老师让我们每组一个白板,然后把每天的任务完成情况着实记录。

Android编程基础笔试题及标准答案

Android编程基础笔试题及答案

————————————————————————————————作者:————————————————————————————————日期:

《Android 编程基础》试卷A 注意事项: 1. 本试卷共8页,满分100分; 2. 请把学院、姓名、班级写到密封线内,考试时间90分钟; 3. 请不要把答案写在密封线内 得分 阅卷人 一、单选题(共35题,共61分) 1、 D03MA057(2分)退出 activity 对一些资源以及状态的操作保存,可以在生命周期的哪个函数中进行 a A 、onPause() B 、onCreate() C 、onResume() D 、onStart() 2、 D02MA058 (2分) Android 项目工程下面的 assets 目录的作用是什么 b A 、放置应用到的图片资源。 Res/drawable B 、主要放置一些文件资源,这些文件会被原封不动打包到 apk 里面 C 、放置字符串,颜色,数组等常量数据 res/values D 、放置一些与 UI 相应的布局文件,都是 xml 文件 res/layout 3、 D04MA059 (2分)下列不属于android 布局的是(c) A 、F r a m e L a y o u t B 、L i n e a r L a y o u t C 、BorderLayout D 、T a b l e L a y o u t E 、R e l a t i v e L a y o u t 4、 D08MA2060 (2分)Intent 的作用的是 a A 、intent 是连接四大组件的纽带,可以实现界面间切换,可以包含动作和动 作数据, B 、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行, 而不会因为切 换页面而消失 service C 、实现应用程序间的数据共享 contentprovider D 、处理一个应用程序整体性的工作 5、 D04EA1061(1分) 下列哪个是AbsoluteLayout 中特有的属性 b A,android:layout_height B,android:layout_x C,android:layout_above D,android:layout_toRightOf 6、 D07EA1062(1分)RatingBar 组件中不能用属性直接设置的是d A,五角星个数 B,当前分数C,分数的增量D,五角星的色彩 7、 D 10EA1063(1分) 在手机开发中常用的数据库是_a__ A,sqlLite B,Oracle C,Sql Server D,Db23 8、 D14MA2064(2分) 关于BroadcastReceiver 的说法不正确的是_b_ 题号 一 二 三 总分 合分人 得分 密封线内不要答题 学院班级姓名

最新传感器试题及答案

一、填空题(20分) 1.传感器由(敏感元件,转换元件,基本转换电路)三部分组成。 2.在选购线性仪表时,必须考虑应尽量使选购的仪表量程为欲测量的(1.5 ) 倍左右为宜。 3.灵敏度的物理意义是(达到稳定工作状态时输出变化量与引起此变化的输入变化量之比。) 4. 精确度是指(测量结果中各种误差的综合,表示测量结果与被测量的真值之间的一致程度。) 5.为了测得比栅距W更小的位移量,光栅传感器要采用(细分)技术。 6.热电阻主要是利用电阻随温度升高而(增大)这一特性来测量温度的。 7.传感器静态特性主要有(线性度,迟滞,重复性,灵敏度)性能指标来描述。 8.电容传感器有三种基本类型,即(变极距型电容传感器、变面积型电容传感器, 变介电常数型电容传感器) 型。 9.压电材料在使用中一般是两片以上在,以电荷作为输出的地方一般是把压电元件(并联)起来,而当以电压作为输出的时候则一般是把压电元件(串联)起来 10.压电式传感器的工作原理是:某些物质在外界机械力作用下,其内部产生机械压力,从而引起极化现象,这种现象称为(顺压电效应)。相反,某些物质在外界磁场的作用下会产生机械变形,这种现象称为(逆压电效应)。 11. 压力传感器有三种基本类型,即(电容式,电感式,霍尔式)型. 12.抑制干扰的基本原则有(消除干扰源,远离干扰源,防止干扰窜入). 二、选择题(30分,每题3分)1、下列( )不能用做加速度检测传感器。D.热电偶 2、将超声波(机械振动波)转换成电信号是利用压电材料的( ).C.压电效应 3、下列被测物理量适合于使用红外传感器进行测量的是(). C.温度 4、属于传感器动态特性指标的是().D.固有频率 5、对压电式加速度传感器,希望其固有频率( ).C.尽量高些 6、信号传输过程中,产生干扰的原因是( )C.干扰的耦合通道 7、在以下几种传感器当中( )属于自发电型传感器.C、热电偶 8、莫尔条纹光栅传感器的输出是( ).A.数字脉冲式 9、半导体应变片具有( )等优点.A.灵敏度高 10、将电阻应变片贴在( )上,就可以分别做成测力、位移、加速度等参数的传感器. C.弹性元件 11、半导体热敏电阻率随着温度上升,电阻率( ).B.迅速下降 12、在热电偶测温回路中经常使用补偿导线的最主要的目的是( ). C、将热电偶冷端延长到远离高温区的地方 13、在以下几种传感器当中( ABD 随便选一个)不属于自发电型传感器. A、电容式 B、电阻式 C、热电偶 D、电感式 14、( )的数值越大,热电偶的输出热电势就越大.D、热端和冷端的温差 15、热电阻测量转换电路采用三线制是为了( B、减小引线电阻的影响). 16、下列( )不能用做加速度检测传感器.B.压电式 三、简答题(30分) 1.传感器的定义和组成框图?画出自动控制系统原理框图并指明传感器在系统中的位置和

《Android程序设计》期末试题B

一、判断题(每小题2分,共10分) 1、Android是J2ME的一个实现。() 2、View是ViewGroup的子类。() 3、一个Intent可以包含多个category。() 4、Android系统下的文件,可以被本系统里的所有应用程序访问。() 5、无论Service是以启动方式还是绑定方式运行,该Service类都要重写onBind 方法。() 二、单项选择题(在每小题的四个备选答案中,有且只有一个正确答案,请将正确答案的序号填在题干的括号内。每小题2分,共20分) 1、下列关于继承的哪项叙述是正确的?() A、在Java中类允许多重继承 B、在Java中一个类只能实现一个接口 C、在Java中一个类不能同时继承一个类和实现一个接口 D、在Java中接口允许继承自另一个接口 2、以下哪种方式不能退出当前活动状态的Activity?() A、调用finish()方法 B、单击(返回)按钮 C、单击(回到桌面)按钮 D、Activity运行时出现异常 3、对于TextView,使用哪个属性来设置显示的文本?() A、android:textSize B、android:text C、android:textColor D、android:string 4、要处理Button的点击事件,需要注册哪个监听器?() A、OnClickListener() B、OnButtonClickListener() C、OnButtonListener() D、OnItemClickListener() 5、浏览网页使用的Intent的Action是什么?() A、ACTION_CALL B、ACTION_EDIT C、ACTION_SEND D、ACTION_VIEW 6、Android 关于启动方式的service生命周期的onCreate()和onStartCommand()方法,说法正确的是()

(完整版)传感器考试试题及答案

传感器原理及其应用习题 第1章传感器的一般特性 一、选择、填空题 1、衡量传感器静态特性的重要指标是_灵敏度______、__线性度_____、____迟滞___、___重复性_____ 等。 2、通常传感器由__敏感元件__、__转换元件____、_转换电路____三部分组成,是能把外界_非电量_转换成___电量___的器件和装置。 3、传感器的__标定___是通过实验建立传感器起输入量与输出量之间的关系,并确定不同使用条件下的误差关系。 4、测量过程中存在着测量误差,按性质可被分为粗大、系统和随机误差三类,其中随机误差可以通过对多次测量结果求平均的方法来减小它对测量结果的影响。 5、一阶传感器的时间常数τ越__________, 其响应速度越慢;二阶传感器的固有频率ω0越_________, 其工作频带越宽。 6、按所依据的基准直线的不同,传感器的线性度可分为、、、。 7、非线性电位器包括和两种。 8、通常意义上的传感器包含了敏感元件和( C )两个组成部分。 A. 放大电路 B. 数据采集电路 C. 转换元件 D. 滤波元件 9、若将计算机比喻成人的大脑,那么传感器则可以比喻为(B )。 A.眼睛 B. 感觉器官 C. 手 D. 皮肤 10、属于传感器静态特性指标的是(D ) A.固有频率 B.临界频率 C.阻尼比 D.重复性 11、衡量传感器静态特性的指标不包括( C )。 A. 线性度 B. 灵敏度 C. 频域响应 D. 重复性 12、下列对传感器动态特性的描述正确的是() A 一阶传感器的时间常数τ越大, 其响应速度越快 B 二阶传感器的固有频率ω0越小, 其工作频带越宽 C 一阶传感器的时间常数τ越小, 其响应速度越快。 D 二阶传感器的固有频率ω0越小, 其响应速度越快。 二、计算分析题 1、什么是传感器?由几部分组成?试画出传感器组成方块图。 2、传感器的静态性能指标有哪一些,试解释各性能指标的含义。 作业3、传感器的动态性能指标有哪一些,试解释各性能指标的含义 第2章电阻应变式传感器 一、填空题 1、金属丝在外力作用下发生机械形变时它的电阻值将发生变化,这种现象称__应变_____效应;半导体或固体受到作用力后_电阻率______要发生变化,这种现象称__压阻_____效应。直线的电阻丝绕成敏感栅后长度相同但应变不同,圆弧部分使灵敏度下降了,这种现象称为____横向___效应。 2、产生应变片温度误差的主要因素有_电阻温度系数的影响、_试验材料和电阻丝材料的线性膨胀系数的影响_。 3、应变片温度补偿的措施有___电桥补偿法_、_应变片的自补偿法、_、。 4. 在电桥测量中,由于电桥接法不同,输出电压的灵敏度也不同,_全桥__接法可以得到最大灵敏度输出。 5. 半导体应变片工作原理是基于压阻效应,它的灵敏系数比金属应变片的灵敏系数大十倍

android期末考大题(沈阳师范大学)

1.SQLite数据库 public class MySqliteDB extends SQLiteOpenHelper { public MySqliteDB(Context context, String name, CursorFactory factory,int version) { super(context, name, factory, version);} public void onCreate(SQLiteDatabase db) { db.execSQL("create table if not exists people ("+"pid integer primary key,"+ "pname text,"+"page integer)");} public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}} public class MainActivity extends Activity { Button btn;MySqliteDB mydb; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(https://www.360docs.net/doc/b411232863.html,yout.activity_main); mydb=new MySqliteDB(this, "MyDB", null, 1); btn=(Button)findViewById(R.id.btn); btn.setOnClickListener(new OnClickListener() { public void onClick(View v) { SQLiteDatabase db=mydb.getReadableDatabase();}});} public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true;}} 2.添加ToggleButton public class Example_55 extends Activity{ public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(https://www.360docs.net/doc/b411232863.html,yout.main); ToggleButton toggleButton = (ToggleButton) findViewById(R.id.toggleButton); toggleButton.setChecked(true); 3.Spinner下拉列表框

相关文档
最新文档