版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 .在android程序中,Log.d()用于输出什么级别的日志信息?(A)A、调试B、信息C、警告D、错误2 .以下情况不会创建Context对象白是(C)A.创建Application对象时B.创建Service对象时C.创建ContentProvider对象时D.创建Activity对象时3 .下列不属于Android中广播中的类别的是(D)A.NormalBroadcasB.StickyBroadcastC.LocalBroadcastD.Orderbroadcast4 .以下哪个不是Intent的Activity启动方式(A)A.FLAG_ACTIVITY_BROUGHT_TO_F
2、IRSTB.FLAG_ACTIVITY_CLEAR_TOPC.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESETD.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS5 .安卓AndroidManifest.xml文件的子节点不包括(C)A.applicationB.servicesC.permissionD.provider6 .下面那个不是Fragment的生命周期方法(D)A.onStartB.onAttachC.onDestoryViewD.onRestart7 .下面那种不是安卓原生支持的Menu(A)A.SelectedMenuB.Option
3、MenuC.SubmenuD.ContextMenu8 .下面不属于android的动画分类的有(D)A、TweenB、FrameC、PropertyD、Animation9 .下列哪个不是安卓service自带的方法(A)A.OnResumeB.onCreateC.onStartCommandD.onRebind10 .下列属于SAX解析xml文件的优点的是(B)A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能B、不用事先调入整个文档,占用资源少C、整个文档调入内存,浪费时间和空间H不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失11 .下列关
4、于Soundpool和MediaPlayer的说法,错误的是(A)A.MediaPlayer支持多个音乐同时播放B.MediaPlayer资源占用率高C.MediaPlayer延迟时间较长D.newMediaPlayer()后要调用prepare()方法才能播放12 .关于res/raw目录说法正确的是(A)A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式课程名称:Android程序设计第1页,共9页B、这里的文件是原封不动的存储到设备上会转换为二进制的格式C、这里的文件最终以二进制的格式存储到指定的包中D>这里的文件最终不会以二进制的格式存储到指定的包中13 .下面异常不属
5、于RuntimeException的是(D)A、ArithmeticExceptionB、IllegalArgumentExceptionC、NullPointerExceptionD>IOException14 .以下方法那个不能实现不显示android标题栏(B)A.在Activity的Oncreate方法中写,this.requestWindowFeature(Window.FEATURE_NO_TITLE);B.设置布局Layout上移一定单位dpC.在manifest设置Activity的节点android:theme="android:style/Theme.NoT
6、itleBar"D.在style中定义<itemname="android:windowNoTitle">true</item>后在manifest中引用15 .下列对androidNDK的理解正确的是(D)A、NDK是一系列工具的集合B、NDK提供了一份稳定、功能有限的API头文件声明。C、使“Java+C”的开发方式终于转正,成为官方支持的开发方式D>ABC都是16 .以下关于安卓的国际化的说法正确的是(B)A.安卓国际化就是将app上架到各国的安卓应用商店B.安卓国际化就是将安卓app相关显示数据设置不同语言版本C.安卓国际化就
7、是将安卓操作系统进行定制D.安卓国际化就是将安卓app适配各国际品牌手机17 .Android项目工程下面的assets目录的作用是什么(B)A、放置应用到的图片资源。B、主要放置多媒体等数据文件C、放置字符串,颜色,数组等常量数据H放置一些与UI相应的布局文件,都是xml文件18 .下面关于Androiddvm的进程和Linux的进程,应用程序的进程说法正确的是(D)A、DVM旨dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dakik虚拟机实例.而每一个DVMTB是在Linux中的一个进程,所以说可以认为是同一个概念B、DVM旨dalivk的虚
8、拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独课程名称:Android程序设计第2页,共9页立的Dakik虚拟机实例.而每一个DVM一定都是在Linux中的一个进程,所以说不是一个概念.C、DVM旨dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM一定都是在Linux中的一个进程,所以说不是一个概念.D>DVM旨dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVMTB是在Linux中的一个进程,所以说可以认为
9、是同一个概念.19 .在android中使用Menu时可能需要重写的方法有(D)。A、onCreateOptionsMenu()B、onCreateMenu()C、onOptionsItemSelected()D、A和C20 .对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(D)A、onPause()B、onCreate()C、onResume()D、onStart()21 .android中下列属于Intent的作用的是(C)A、实现应用程序间的数据共享B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失C、可以实现界面间的切换,可
10、以包含动作和动作数据,连接四大组件的纽带DK处理一个应用程序整体性的工作22 .下面的对自定style的方式正确的是(A)A、 resources<stylename="myStyle"><itemname="android:layout_width">fill_parent</item></style></resources>B、 <stylename="myStyle"><itemname="android:layout_width"
11、>fill_parent</item></style>C、 <resources><itemname="android:layout_width">fill_parent</item></resources>D<resources><stylename="android:layout_width">fill_parent</style></resources>23 .android关于service生命周期的onCreate()和
12、onStart()说法正确的是(D)A、当第一次启动白时候先调用onStart()方法B、当第一次启动的时候只会调用onCreate()方法C、如果service已经启动,将先后调用onCreate()和onStart()方法D>如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法课程名称:Android程序设计3页,共9页24 .下面退出Activity错误的方法是(C)A、finish()B、抛异常强制退出C、System.exit()D、onStop()25 .我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的
13、机器就会变得越慢,那么线程销毁的方法是(A)A、onDestroy()B、onClear()C、onFinish()D、onStop()26 .下列关于Android的Asset目录下的文件说法不正确的是(D)A.不能通过R文件直接访问Asset目录资源B.Asset目录可以新建文件夹C.Asset目录一般存放一些二进制文件D.通过AssetManager提供的方法可以修改里面的文件27 .以下对Activity的生命周期方法描述错误的是(A)A.onResume阶段,用户不能与Activity交互B.Onstop阶段,原Activity变得不可见,被下一个activity覆盖了C.onDes
14、tory阶段,这是activity被干掉前最后一个被调用方法D.onPause阶段,到这一步是可见但不可交互的B、28 .关于ContenValues类说法正确的是(A)A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值都是基本类型B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任意类型,而值都是基本类型C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可以为空,而值都是String类型DK他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的
15、名值对当中的名是String类型,而值也是String类型29 .在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(B)A、getWriteDatabase()B、getReadableDatabase()C、getDatabase()D>getAbleDatabase()30 .下面在AndroidManifest.xml文件中注册BroadcastReceiver方式正确的(A)A、<receiverandroid:name="NewBroad"><intent-fil
16、ter><actionandroid:name="vider.action.NewBroad"/>课程名称:Android程序设计4页,共9页<action></intent-filter></receiver>B、<receiverandroid:name="NewBroad"><intent-filter>android:name="vider.action.NewBroad"/></intent-
17、filter></receiver>C、<receiverandroid:name="NewBroad"><actionandroid:name="vider.action.NewBroad"/><action></receiver>D、<intent-filter><receiverandroid:name="NewBroad"><action>android:name="vid
18、er.action.NewBroad"/><action></receiver></intent-filter>二.简答题1.简述apk安装卸载的原理。APK安装可以通过以下四种方式:1 .系统应用安装,开机时完成系统应用的检查,没安装就安装,安装就跳过,无安装界面。2 .网络下载应用安装,通过market应用完成,无安装界面。3 .ADB工具安装,无安装界面4 .通过SD卡来安装apk,有安装界面,由packageinstaller.apk应用处理安装及卸载过程的界面。应用安装涉及到如下几个目录:system/app系统自带的应用程序,无法
19、删除data/app用户程序安装的目录,有删除权限data/data存放应用程序的数据Data/dalvik-cache将apk中的dex文件安装到dalvik-cache目录下(dex文件是dalvik虚拟机的可执行文件,其大小约为原始apk文件大小的四分之一)安装过程:复制APK安装包到data/app目录下,解压并扫描安装包,把dex文件(Dalvik字节码)保存到dalvik-cache目录,并data/data目录下创建对应的应用数据目录。卸载过程:删除安装过程中在上述三个目录下创建的文件及目录。5 .简述Android应用程序结构是哪些?Android应用程序结构是:LinuxKe
20、rnel(Linux内核)、Libraries(系统运行库或者是c/c+核心库)、Application课程名称:Android程序设计第5页,共9页Framework(开发框架包)、Applications(核心应用程序)6 .安卓如何做屏幕适配?1)android有HL、MX、XX四个不同的文件夹存放不同分辨率的图片,系统会自动加载2)偏移量d的设置可以在values-hpdi,values-mdpi,values-ldpi三种文件夹中的dimens.xml文件进行设置7 .如何将一个Activity设置成窗口的样式。在AndroidManifest.xml中定义Activity的地方一句
21、话android:theme="android:style/Theme.Dialog"或android:theme="android:style/Theme.Translucent"就变成半透明的8 .在多线程编程这块,我们经常要使用Handler,Thread和Runnable这三个类,请简述他们之间的关系。Android的CPUb配的最小单元是线程,Handler一般是在某个线程里创建的,因而Handler和Thread就是相互绑定的,一一对应。而Runnable是一个接口,Thread是Runnable的子类。所以说,他俩都算一个进程。Handle
22、rThread顾名思义就是可以处理消息循环的线程,他是一个拥有Looper的线程,可以处理消息循环。与其说Handler和一个线程绑定,不如说Handler是和Looper一一对应的。最后需要说明的是,在UI线程(主线程)中:mHandler=newHandler();mHandler.post(newRunnable()voidrun()/执行代码.);这个线程其实是在UI线程之内运行的,并没有新建线程。常见的新建线程的方法是:Threadthread=newThread();thread.start();HandlerThreadthread=newHandlerThread("
23、string");thread.start();9 .AIDL的全称是什么?如何工作?能处理哪些类型的数据?AIDL的英文全称是AndroidInterfaceDefineLanguage当A进程要去调用B进程中的service时,并实现通信,我们通常都是通过AIDL来操作的A工程:首先我们在net.blogjava.mobile.aidlservice包中创建一个RemoteService.aidl文件,在里面我们自定义一个接口,含有方法get。ADT插件会在gen目录下自动生成一个RemoteService.java文件,该类中含有一个名为RemoteService.stub的内
24、部类,该内部类中含有aidl文件接口的get方法。说明一:aidl文件的位置不固定,可以任意然后定义自己的MyService类,在MyService类中自定义一个内部类去继承RemoteService.stub这个内部类,实现get方法。在onBind方法中返回这个内部类的对象,系统会自动将这个对象封装成IBinder对象,传递给他的调用者。其次需要在AndroidManifest.xml文件中配置MyService类,代码如下:课程名称:Android程序设计第6页,共9页<!-注册服务-><serviceandroid:name=".MyService"
25、;><intent-filter><!-指定调用AIDL服务的ID-><actionandroid:name="net.blogjava.mobile.aidlservice.RemoteService"/></intent-filter></service>为什么要指定调用AIDL服务的ID,就是要告诉外界MyService这个类能够被别的进程访问,只要别的进程知道这个ID,正是有了这个ID,B工程才能找到A工程实现通信。说明:AIDL并不需要权限B工程:首先我们要将A工程中生成的RemoteService
26、.java文件拷贝到B工程中,在bindService方法中绑定aidl服务绑定AIDL服务就是将RemoteService的ID作为intent的action参数。说明:如果我们单独将RemoteService.aidl文件放在一个包里,那个在我们将gen目录下的该包拷贝到B工程中。如果我们将RemoteService.aidl文件和我们的其他类存放在一起,那么我们在B工程中就要建立相应的包,以保证RmoteService.java文件的报名正确,我们不能修改RemoteService.java文件bindService(newInten("net.blogjava.mobile.
27、aidlservice.RemoteService"),serviceConnection,Context.BIND_AUTO_CREATE);ServiceConnection的onServiceConnected(ComponentNamename,IBinderservice)方法中的service参数就是A工程中MyService类中继承了RemoteService.stub类的内部类的对象。三.程序分析题1.现在已经在Activity的布局文件main.xml中创建了id为Progressbar1的进度条,和id为button1的按钮,请写出实现以下功能的代码:1)在Act
28、ivity页面显示这个按钮和进度条;2)点击按钮后,使用AsyncTask更新进度条的进度。importandroid.app.Activity;importandroid.os.AsyncTask;importandroid.os.Bundle;importandroid.util.Log;importandroid.view.View;importandroid.view.View.OnClickListener;importandroid.widget.Button;importandroid.widget.ProgressBar;publicclassMyActivityextends
29、ActivityprivateProgressBarmProgressBar=null;privateButtonmyButton=null;/*Calledwhentheactivityisfirstcreated.*/课程名称:Android程序设计第7页,共9页OverridepublicvoidonCreate(BundlesavedInstanceState)super.onCreate(savedlnstanceState);setContentView(R.layout.main);mProgressBar=(ProgressBar)findViewById(R.id.Progr
30、essbar1);myButton=(Button)findViewById(R.id.button1);myButton.setOnClickListener(newBtnClickListener();privateclassBtnClickListenerimplementsOnClickListenerpublicvoidonClick(Viewarg0)/TODOAuto-generatedmethodstubnewmyAsync().execute();privateclassmyAsyncextendsAsyncTask<Void,Integer,Void>intdu
31、ration=0;intcurrent=0;OverrideprotectedVoiddoInBackground(Void.params)doLog.d("handleMessage","id:"+Thread.currentThread().getId()+name:"+Thread.currentThread().getName();current+=10;trypublishProgress(current);/这里的参数类型是AsyncTask<Void,Integer,Void>中的Integer决定的,在onProgressUpdate中可以得到这个值去更新UI主线程,这里是异步线程Thread.sleep(1000);if(mProgressBar.getProgress()>=100)break;Jcatch(Exceptione)二while(mProgressBar.getProgress()<=100);returnnull;OverrideprotectedvoidonProgressUpdate(Integer.values)super.onProgressUpdate(values);System.out.pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民勤县青苔泉煤业有限公司青苔泉煤矿矿山地质环境保护与土地复垦方案
- 小公司出纳发展
- 钢结构制作焊接工艺评定报告
- (正式版)DB35∕T 2315-2026 荷叶离褶伞(鹿茸菇)工厂化袋式栽培技术规程
- 安远公安面向社会公开招聘留置看护辅警【10人】笔试参考题库及答案解析
- 北京市怀柔区政务服务和数据管理局招聘行政辅助人员13人考试参考题库及答案解析
- 针对员工请假频繁的制度
- 2026年山东省淄博市桓台县初四一模英语试卷(试卷+解析)
- 隆昌市紧密型县域医疗卫生共同体总医院2026年上半年部分成员单位自主考试招聘卫生专业技术人员(57人)考试模拟试题及答案解析
- 重大事件突发事件上报制度
- 无人机集群技术-智能组网与协同 课件全套 第1-8章 绪论- 无人机集群任务分配
- 网络安全渗透测试PPT完整全套教学课件
- 道氏理论课件
- 方方小说-《武昌城》
- 《基于PLC控制的自动洗车系统设计(论文)》
- 银行保险客户KYC基础信息表
- 肿瘤登记培训课件
- 西藏自治区阿里地区各县区乡镇行政村村庄村名居民村民委员会明细及行政区划代码
- 2022年五年级下册生活生命与安全教案课程及计划
- 印刷讲义医院感染的管理
- 四年级作文指导写人ppt-PPT课件(共14张)
评论
0/150
提交评论