一、单选题
退出 activity 对一些资源以及状态的操作保存,可以在生命周期
的哪个函数中进行( A )
A、onPause()
B、onCreate()
C、onResume()
D、onStart()
Android 项目工程下面的 assets 目录的作用是什么 ( B )
A、放置应用到的图片资源。 Res/drawable
B、主要放置一些文件资源,这些文件会被原封不动打包到 apk 里面
C、放置字符串,颜色,数组等常量数据 res/values
D、放置一些与 UI 相应的布局文件,都是 xml 文件 res/layout
下列不属于android布局的是( C )
A、FrameLayout
B、LinearLayout
C、BorderLayout
D、TableLayout
E、RelativeLayout
Intent 的作用的是 ( A )
A、intent是连接四大组件的纽带,可以实现界面间切换,可以包含动作和动作数据;
B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失 service
C、实现应用程序间的数据共享 contentprovider
D、处理一个应用程序整体性的工作
下列哪个是AbsoluteLayout中特有的属性 ( B )
A、android:layout_height
B、android:layout_x
C、android:layout_above
D、android:layout_toRightOf
RatingBar组件中不能用属性直接设置的是( D)
A、五角星个数
B、当前分数
C、分数的增量
D、五角星的色彩
在手机开发中常用的数据库是( A )
A、,sqlLite
B、Oracle
C、Sql Server
D、Db23
关于BroadcastReceiver的说法不正确的是( B )
A)是用来接收广播Intent的
B),一个广播Intent只能被一个订阅了此广播的BroadcastReceiver所接收
C)对有序广播,系统会根据接收者声明的优先级别按顺序逐个执行接收者
D)接收者声明的优先级别在
使用MediaPlayer播放保存在sdcard上的mp3文件时( C )
A)需要使用MediaPlayer.create方法创建MediaPlayer B)直接newMediaPlayer即可C)需要调用setDataSource方法设置文件源D)直接调用start方法,无需设置文件源在android中使用RadioButton时,要想实现互斥的选择需要用的组件是(D )
A)ButtonGroup B) RadioButtons C)CheckBox D)RadioGroup
在多个应用中读取共享存储数据时,需要用到的query方法,是哪个对象的方法?( A )
A)ContentResolver B)ContentProvider C)Cursor D)SQLiteHelper
DDMS中Log信息分为几个级别( C )
A)3 B)4 C)5 D)6
能够自动完成输入内容的组件是( D )
A)TextView B,EditText C)ImageView D)AutoCompleteTextView
创建子菜单的方法是( B )
A)add B)addSubMenu C)createSubMenu D)createMenu
使用AIDL完成远程service方法调用下列说法不正确的是( A )
A)aidl对应的接口名称不能与aidl文件名相同
B)aidl的文件的内容类似java代码
C)创建一个Service(服务),在服务的onBind(Intent intent)方法中返回实现了aidl接口的对象
D)aidl对应的接口的方法前面不能加访问权限修饰符
MediaPlayer播放资源前,需要调用哪个方法完成准备工作( B )
A)setDataSource B)prepare C)begin D)pause
处理菜单项单击事件的方法不包含( D )
A)使用onOptionsItemSelected(MenuItem item)响应
B)使用onMenuItemSelected(int featureId ,MenuItem item)响应
C)使用onMenuItemClick(MenuItem item)响应
D)使用onCreateOptionsMenu(Menu menu)响应
android中文件操作模式中表示只能被本应用使用,写入文件会覆盖的是( D )
A) MODE_APPEND B)MODE_WORLD_READABLE
C)MODE_WORLD_WRITEABLE D)MODE_PRIVATE
进度条中哪个属性是设置进度条大小格式的(D )
A)android:secondaryProgress B)android:progress C)android:max D)style
下列用以显示一系列图像的是( B )
A)ImageView B)Gallery C)ImageSwitcher D)GridView
表示下拉列表的组件是( B )
A)Gallery B)Spinner C)GridView D)ListView
关于AlertDialog的说法不正确的是( A )
A)要想使用对话框首先要使用new关键字创建AlertDialog的实例
B)对话框的显示需要调用show方法
C)setPositiveButton方法是用来加确定按钮的
D)setNegativeButton方法是用来加取消按钮的
下列说法错误的是( D )
A)Button是普通按钮组件,除此外还有其他的按钮组件
B)TextView是显示文本的组件,TextView是EditText的父类
C)EditText是编辑文本的组件,可以使用EditText输入特定的字符
D)ImageView是显示图片的组件,可以通过设置显示局部图片
关于android中播放视频的说法不对的是( C )
A)可以使用SurfaceView组件播视频
B)可以使用VideoView组件播视频
C)VideoView组件可以控制播放的位置和大小
D)VideoView播放视频的格式可以是3gp
下列哪个是SqlLite下的命令( C )
A)shell B)push C).quit D)keytool
下列关于如何使用Notification,不对的是(D)
A)notification需要NotificatinManager来管理
B)使用NotificationManager的notify方法显示notification消息
C)在显示Notification时可以设置通知时的默认发声,震动等
D) Notification中有方法可以清除消息
下列关于 open core说法不正确的是( B )
A) Open core是Android多媒体框架的核心
B) MediaPlayer是openCore中的一个核心类
C)所有在Android平台的音频、视频的采集以及播放等操作都是通过它来实现的
D)在实现开发中我们并不会过多地研究open core的实现,我们的Android为我们提供了上层的media api的开发使用
上下文菜单与其他菜单不同的是( B )
A)上下文菜单项上的单击事件可以使用onMenuItemSelected方法来响应
B)上下文菜单必须注册到指定的view上才能显示
C)上下文菜单的菜单项可以添加,可以删除
D)上下文菜单的菜单项可以有子项
拖动条组件是( C )
A)RatingBar B)ProgressBar C)SeekBar D)ScrollBar
读取文件内容的首要方法是( D )
A)openFileOutput B)read C)write D)openFileInput
关于隐式Intent正确的是( A )
A)android中使用IntentFilter 来寻找与隐式Intent相关的对象
B)通过组件的名称寻找与intent相关联的对象
C)隐式Intent更多用于在应用程序内部传递消息
D)一个声明了IntentFilter的组件只能响应隐式Intent请求
多选框被选择事件通常用( B )
A)setOnClickListener B)setOnCheckChangeListener
C)setOnMenuItemSelectedListener D)setOnCheckedListener
自定义对话框时,将视图对象添加到当前对话框的方法是( D )
A)setIcon B)setXML C)setLayout D)setView
下列不属于service生命周期的方法是( C )
A)onCreate B)onDestroy C)onStop D)onStart
绑定Service的方法是( A )
A,bindService B, startService C,onStart D,onBind
android是如何组织Activity的( A )
A、以栈的方式组式Activit y
B、以队列的方式组织Activity
C、以树形方式组织Activity
D、以链式方式组织Activity。
onPause什么时候调用( C )
A.当界面启动时
B.当onCreate方法被执行之后
C.当界面被隐藏时
D.当界面重新显示时
在Activity中,如何获取service对象(A)
A.可以通过直接实例化得到。
B.可以通过绑定得到。
C.通过startService()
D.通过getService()获取。
在表格布局中,android:collapseColumns="1,2"的含义是: (C )
A、在屏幕中,当表格的列能显示完时,显示1,2列
B、在屏幕中,当表格的列显示不完时,折叠
C、在屏幕中,不管是否能都显示完,折叠1、2列
D、在屏幕中,动态决定是否显示表格。
绝对布局中,android:layout_x 的含义有( B )
A、以手机左下为原点,组件显示到屏幕中的横向坐标值。
B、以手机左上为原点,组件显示到屏幕中的横向坐标值。
C、以手机右下为原点,组件显示到屏幕中的横向坐标值。
D、以手机右下为原点,组件显示到屏幕中的横向坐标值。
创建Menu需要重写的方法是( C )
A、onOptionsCreateMenu(Menu menu)
B、onOptionsCreateMenu(MenuItem menu)
C、onCreateOptionsMenu(Menu menu)
D、onCreateOptionsMenu(MenuItem menu)
在使用SQLiteOpenHelper这个类时,它的哪一个方法是用来实现版本升级之用的( D ) A.onCreate() B.onCreade() C.onUpdate() D. onUpgrade() ScrollView中,可以直接包含多少个组件( D )
A.三个B.两个C.一个D.无数个
TabHost.newTabSpec("tab1")( B )
A.为tab页创建标题为tab1
B.为tab页创建ID为tab1
C.为tab页创建内容
D.为tab页创建新空格
关于适配器的说法正确的有( B )
A.它主要是用来存储数据
B.它主要用来把数据绑定到组件上
C.它主要用来解析数据D.它主要用来存储xml数据
Matrix类的作用(A )
A.可以存储缩小或放大比列B.存储文件中的图片信息
C.存储资源中的图片信息 D. 存储内存中的图片信息
android:completionThreshold=1是哪个组件的属性( D )
A.ImageButton
B.EditText C.TextView D.AutoCompleteTextView
下列说法正确的是( A )
A、每个进程都运行于自己的java 虚拟机(VM)中。
B、默认情况下,每个应用程序中均运行于自己的进程中,而且此进程不会被消毁。
C、每个应用程序会被赋予一个唯一的linux用户ID,从而使得该应用程序下的文件,其它用户也可以访问。
D、一个应用程序数据,可以随意被其它应用程序所访问。
关于Activity说的法不正确的是( C )
A. Activity是为用户操作而展示的可视化用户界面
B. 一个应用程序可以有若干个Activity
C. Activity可以通过一个别名去访问
D. Activity可以表现为一个漂浮的窗口
下列关于Service的描述,正确的是(D)
A.Servie主要负责一些耗时比较长的操作,这说明Service会运行在独立的子线程中B.每次调用Context类中的StartService()方法后都会新建一个Service实例
C.每次启动一个服务时候都会先后调用onCreate()和onStart()方法
D.当调用了ConText类中的StopService()方法后,Serviece中的onDestroy()方法会自动回调
激活Activity的方法是( C )
A.runActivity()
B.goActivity()
C.startActivity()
D.startActivityForIn()
下列属于SAX解析xml的优点的是( B )
A、将整个文档存于内存中,这样便于操作
B、不用事先将整个文档拷入内存
C、整个文档放入内容,浪费时间和空间
D、不是长久驻留内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失。下列样式表定义正确的是( C )
A、
B、
C、
D、
创建Menu需要重写的方法是( C )
A、onOptionsCreateMenu(Menu menu)
B、onOptionsCreateMenu(MenuItem menu)
C、onCreateOptionsMenu(Menu menu)
D、onCreateOptionsMenu(MenuItem menu)
在使用SQLiteOpenHelper这个类时,它的哪一个方法是用来实现版本升级之用的( D ) A.onCreate() B.onCreade() C.onUpdate() D. onUpgrade()
关于android进程,说法不正确的是( C )
A.组件运行所在的进程,是由androidmanifest.xml决定,它可以指定该组件运行于哪个进程。
B、当急需内存时,android会决定优先关闭那些空闲的进程
C.背景进程是不为用户所见的Activity,但是还会有可能被用户看到,所以它不能被杀死D.可视进程一般不会不被系统所杀死
在Activity的生命周期中,当它从可见状态转向半透明状态时,它的哪个方法必须被调用
( B )
A.onStop()
B.onPause()
C.onRestart()
D.onStart()
关于线程说法不正确的是( B )
A.在android中,我们可以在主线程中,创建一个新的线程
B.在创建的新线程中,它可以操作UI组件
C.新线程可以和Handler共同使用
D.创建的Handler对象,它隶属于创建它的线程
当Activity被消毁时,如何保存它原来的状态(A)
A.实现Activity的onSaveInstanceState()方法
B.实现Activity的onSaveInstance()方法
C.实现Activity的onInstanceState()方法
D. 实现Activity的onSaveState()方法
关于Intent对象说法错误的是( D )
A.在android中,Intent对象是用来传递信息的
B.Intent对象可以把值传递给广播或Activity
C.利用Intent传值时,可以传递一部分值类型
D.利用Intent传值时,它的key值可以是对象
在android中,ArrayAdapter类是用于(A )
A.用于把数据绑定到组件上B.它能把数据显示到Activity上
C.它能把数据传递给广播D.它能把数据传递给服务
使进度条变横向的系统样式是( A )
A. @android:style/Widget.ProgressBar.Horizontal
B. @android:style/ProgressBar.Horizontal
C. @style/Widget.ProgressBar.Horizontal
D. @style/ProgressBar.Horizontal
能提供内容补全的组件是( D )
A.EditText
B.DatePicker
C.TimePicker
D.AutoCompleteTextView activity对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(D ) A、onPause() B、onCreate() C、 onResume() D、onStart()
android 中下列属于Intent的作用的是( C )
A、实现应用程序间的数据共享
B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失
C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带
D、处理一个应用程序整体性的工作
下列属于SAX解析xml文件的优点的是( B )
A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能
B、不用事先调入整个文档,占用资源少
C、整个文档调入内存,浪费时间和空间
D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失关于res/raw目录说法正确的是( A )
A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式
B、这里的文件是原封不动的存储到设备上会转换为二进制的格式
C、这里的文件最终以二进制的格式存储到指定的包中
D、这里的文件最终不会以二进制的格式存储到指定的包中
关于ContenValues类说法正确的是( D )
A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值都是基本类型
B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任意类型,而值都是基本类型
C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可以为空,而值都是String类型
D、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值也是String类型
下面在AndroidManifest.xml文件中注册BroadcastReceiver方式正确的是( A )
A、android:name="android.provider.action.NewBroad"/>
B、andro id:name=”android.provider.action.NewBroad”/>
C、android:name="android.provider.action.NewBroad"/>
D、android:name=”android.provider.action.NewBroad”/>
下面退出Activity错误的方法是(C )
A、finish()
B、抛异常强制退出
C、System.exit()
D、onStop()
下面哪一个不属于Android体系结构中的应用程序层( C )
A.电话簿
B.日历
C.SQLite
D.SMS程序
下面哪种说法不正确( B)
A.Android应用的gen目录下的R.java被删除后还能自动生成;
B.res目录是一个特殊目录,包含了应用程序的全部资源,命名规则可以支持数字(0-9)
下横线(_),大小写字母(a-z , A-Z);
C.AndroidManifest.xml文件是每个Android项目必须有的,是项目应用的全局描述。其
中指定程序的包名(package=”…”)+指定android应用的某个组件的名字(android:name=”…”)组成了该组件类的完整路径
D.assets和res目录都能存放资源文件,但是与res不同的是assets支持任意深度的子
目录,在它里面的文件不会在R.java里生成任何资源ID
在一个相对布局中怎样使一个控件居中( C )
android:gravity="center"
android:layout_gravity="center"
android:layout_centerInParent="true"
android:scaleType="center"
下面是一段生成对话框的代码,哪一行有错误?( A )
Builder builder = new Builder(getApplicationContext()); 1 builder.setTitle("提示").setMessage("请选择"); 2
builder.setPositiveButton("重置", new OnClickListener() 3
{ 4
public void onClick(DialogInterface dialog, int which) 5
{ 6
Log.i("log", "重置被按了!"); 7
} 8 }); 9
builder.setNegativeButton("取消", null); 10
builder.setNeutralButton("确定", new OnClickListener() 11
{ 12
public void onClick(DialogInterface dialog, int which) 13
{ 14
Toast.makeText(getApplicationContext(), "确定被按了!", 15
Toast.LENGTH_SHORT).show(); 16
} 17 }); 18
builder.create().show(); 19
A.第1行
B.第10行
C.第15行
D.第19行
关于Android 事件机制与事件监听,下列说法不正确的有( D )
i.View类里的event listener是一个带有回调方法的接口,当UI里的组建是被用户触发时,
这些方法会被系统框架所调用
ii.来自View.OnClickListener ,当点击这个Item(在触摸模式),或者当光标聚集在这个Item上时按下“确认”键,导航键,或者轨迹球, 它会被调用。
iii.来自View.OnLongClickListener ,当长按这个Item(在触摸模式),或者当光标聚集在这个Item上时长按“确认”键,导航键,或者轨迹球, 它会被调用。
iv.来自View.OnFocusChangeListener ,当手移到或离开这个Item , 它会被调用
v.来自View.OnKeyListener,当光标移到这个Item,按下和释放一个按键的时候,它会被调用
vi.来自View.OnTouchListener,在这个Item的范围内触摸的时候,它会被调用
vii.来自View.OnCreateContextMenuListener,当上下文菜单被建立时,只需短按一下,它会被调用,
A.i
B.i ii iv vii
C.iii v vi vii
D.vii
setOnTouchEvent 设置返回值为true 和false有何区别?( C )
A.没有区别,都能对事件进行监听
B.设置为true时只能在移动时获得一次监听事件,false则可以多次
C.返回true表示这个消息已经被处理结束,后续的handler不再接收到这个消息
D.设置为false是,在处理一次监听事件后,系统将抛弃该次事件
下列说法哪个不正确( C )
A.拥有android:configChanges="orientation|keyboardHidden"标签的Activity在横竖屏转
换时不会再执行onCreate方法
B.默认情况下对一个Activity的对象进行横竖屏切换,该对象的onCreate方法在每次
切换时都会执行
C.一个Activity的对象a1上弹出了一个模拟对话框形式的Activity的对象a2,按返回
键后a1执行了onStart和onResume方法,a2执行了onPause,onStop和onDestroy 方法
D.一个界面上的EditText中输入文字后,再按下Home,该界面消失,等再回到该界面
文字内容仍在,onCreate方法也不会执行
E/AndroidRuntime(1099): https://www.sodocs.net/doc/4b9055204.html,ng.RuntimeException: Unable to instantiate activity ComponentInfo{com.test/com.test.CanvasActivitys}: https://www.sodocs.net/doc/4b9055204.html,ng.ClassNotFoundException: com.test.CanvasActivitys in loader dalvik.system.PathClassLoader[/data/app/com.test-1.apk] 这段话是程序报错在LogCat中产生的记录,从中可以分析问题的原因可能在哪里?( B )
A.程序执行CanvasActivitys的一个代码段时一个View有引用无对象
B.CanvasActivitys类没有在AndroidManifest中正确申明
C.最小SDK支持版本号比运行这个程序的设备版本号还高
D.CanvasActivitys是一个Activity,但没有重写它的onCreate方法
下列说法错误的是( B )
A.Intent起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者
与被调用者之间的解耦
B.Intent 可以传递View对象
C.对于直接Intent,Android不需要去做解析,因为目标组件已经很明确,Android需
要解析的是那些间接Intent,通过解析,将Intent映射给可以处理此Intent的Activity、IntentReceiver或Service
D.通过Intent可以删除程序
android:shape="line"> android:color="@color/gray" android:dashWidth="5dp" android:dashGap="3dp" />
这是一个资源配置文件,下面描述正确的是?( D )
A.这个shape文件是画一个宽为5dp,高为3dp的色块
B.这个shape文件是画一个宽从5dp到3dp的等腰梯形
C.这个shape文件是画一个底为5dp高为3dp的等腰三角形
D.这个shape文件是画一条虚线,实线段5dp,间隔3dp
下列关于Service的描述,正确的是(D)
A.Servie主要负责一些耗时比较长的操作,这说明Service会运行在独立的子线程中B.每次调用Context类中的StartService()方法后都会新建一个Service实例
C.每次启动一个服务时候都会先后调用onCreate()和onStart()方法
D.当调用了ConText类中的StopService()方法后,Serviece中的onDestroy()方法会自动回调
通过SurfaceView对象得到SurfaceHolder对象holder,调用holder的addCallback()方法,在匿名内部类中的onCreat()方法中的代码如下:( A )
Paint paint=new Paint();
paint.setColor(Color.Red);
Canvas canvas = holder.lockCanvas();
canvas.drawRect(0, 0, 360, 480, paint);
holder.unlockCanvasAndPost(canvas);
holder.lockCanvas(new Rect(0, 0, 250, 250));
holder.unlockCanvasAndPost(canvas);
holder.lockCanvas(new Rect(0, 0, 200, 200));
holder.unlockCanvasAndPost(canvas);
holder.lockCanvas(new Rect(0, 0, 150, 150));
holder.unlockCanvasAndPost(canvas);
holder.lockCanvas(new Rect(0, 0, 100, 100));
holder.unlockCanvasAndPost(canvas);
最后显示的图形是:
A. B. C. D.
二、多选题
Intent 传递数据时,下列的数据类型哪些可以被传递 ( ABCD)
A、Serializable
B、charsequence
C、Parcelable
D、Bundle
android 数据存储与访问的方式一下说法正确的是:( ABCDE)
A、文件
B、数据库
C、sharedpreference
D、内容提供者
E、网络
下列可能会导致GC内存泄露的是:( ABC)
A、数据库的cursor没有关闭
B、构造adapter时,没有使用缓存contentview
C、衍生listview的优化问题-----减少创建view的对象,充分使用contentview,可以使用一静态类来优化处理getview的过程activity一般会重载一些方法用来维护其生命周期,下列不输于相关方法的是
D、使用sqlite数据库
android 通过 startService 的方式开启服务, 关于 service生命周期的 onCreate()和 onStart() 说法正确的是 ( AD)
A、当第一次启动的时候先后调用 onCreate()和 onStart()方法
B、当第一次启动的时候只会调用 onCreate()方法
C、如果 service 已经启动,将先后调用 onCreate()和 onStart()方法
D、如果 service 已经启动,只会执行 onStart()方法,不在执行 onCreate()方法
开发android程序需要的开发工具和开发包包括 ( ABCD)
A、JDK
B、Eclipse
C、Android SDK
D、ADT
E、Raw
下列属于补间动画相关类的是( ACD )
A、TranslateAnimation
B、FrameAnimation
C、RotateAnimation
D、AlphaAnimation
下列哪些 api 的操作需要声明权限 ( CD)
A、播放 mp3 文件
B、读 SD 卡 (读 sd 卡状态)
C、发短信
D、访问网络
在 android 中使用 SQLiteOpenHelper 这个辅助类时,哪些操作可能生成一个数据库( AB ) A、getWriteableDatabase() B、getReadableDatabase()
C、getDatabase()
D、getAbleDatabase()
下列对SharePreferences存、取文件的说法中正确的是:( ABD )
A、属于移动存储解决方案
B、sharePreferences处理的就是key-value对
C、读取xml文件的路径是/sdcard/shared_prefx
D、信息的保存格式是xml NotificationManager中清除消息的方法是 ( BD )
A、destroy
B、cancel
C、clear
D、cancelAll
下列属于Activity的状态是( ABC )
A.运行状态 B 暂停状态 C 停止状态 D 睡眠状态
关于Handler的说话正确的是( AB )
A.它实现不同线程间通信的一种机制
B.它避免了新线程操作UI组件
C.它采用栈的方式来组织任务的
D.它可以属于一个新的线程
关于广播的作用,正确的说法是( ABCD )
A 它是用接收系统发布的一些消息的
B 它可以帮助service修改用户界面
C 它可以启动一个Activity
D 它可以启动一个Service
下面属于View的子类的是( C D )
A Activity
B Service
C ViewGroup
D TextView
在main.xml中,定义一个组件时,有两个属性必须写(AB )
A android:layout_width
B android:layout_height
C android:id="@+id/start"
D android:text
请找出你学过的适配器类( AC )
A SimpleAdapter
B SimpleArrayAdapter
C SimpleCursorAdapter
D SimpleCursorsAdapter
关于主题的说法,正确的是( ABC )
A 它是属性集合
B 它可以在程序中来设置
C 它通常用于一个Activity或所有Activity上
D 它可以用于单个TextView上
意图可分为( AB )
A 显式意图
B 隐式意图
C 组件意图
D 类意图
关于Sqlite数据库,正确的说法( ABD )
ASqliteOpenHelper类主要是用来创建数据库和更新数据库
B SqliteDatabase类是用来操作数据库的
C 在每次调用SqliteDatabase的getWritableDatabase()方法时,会执行SqliteOpenHelper 的onCreate方法。
D 当数据库版本发生变化时,可以自动更新数据库结构
解析xml的方式有( CD )
A 字符器类型
B 流方式
C dom
D SAX
当启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行的回调函数是___startActivityResult ()_
android中输入日期的组件是DatePicker ____
AIDL的全称是_Android interface definition language _
广播分为:无序广播和有序广播_
android中输入时间的组件是__TimePicker
Android应用的入口点是____Main___
android中专门用于录音的组件是__MediaRecorder_
动画中有一种_Frame _动画,通过顺序的播放排列好的图片来实现,类似电影。
从PC向模拟器中复制文件的命令_ adb push __
android系统4个应用程序之一,主要用于后台运行和跨进程访问的是service
创建只显示文本的Toast对象时建议使用makeText方法
android中常用的四个布局是framlayout,(LinenarLayout),relativelayout和tablelayout。
android 的四大组件是(activiey),service,broadcast和contentprovide。android 中service的实现方法是:( startservice )和bindservice。
activity一般会重载7个方法用来维护其生命周期,除了
onCreate(),onStart(),onDestory() 外还有(。android的数据存储的方式sharedpreference,文件,( SQlite ) ,contentprovider,网络。从PC向模拟器中复制文件的命令(adb push)
请使用命令行的方式创建一个名字为myAvd, SD卡版本为2.2,sd卡是在d盘的根目录下,名字为scard.img,并指定屏幕大小HVGA.(dnroid create acd -n myAvd -t 8 -s HVDA - C d:\card.img)
属于android中的三种适配器 SimpleAdapter、ArrayAdapter、(BaseAdapter ).
元素中layout_width的取值有( wrap_content )、match_parent、match_parent
sqlite支持五种数据类型包括(TEXT )、NULL、BLOB、REAL、INTEGER
二判断题
1.一个Activity就是一个可视化的界面或者看成是控件的容器。√
2.Intent有很长的生命周期,是没有用户界面的程序,可以保持应用在后台运行,而不会
因为切换页面而消失×
3.onPause()方法在activity被暂停或收回cpu和其他资源时调用,该方法用于保存活动状
态的,也是对运行时数据的现场保护。√
4.onDestroy是activity被干掉前最后一个被调用方法,当调用finish方法或者系统为了节
省空间将它暂时性的干掉时候调用。√
5.如果service已经启动,再次启动该服务时将先后调用onCreate()和onStartCommand()方
法×
6.使用startService()方法启动服务后,调用者和服务间没有关联,即使调用者退出了,
服务任然进行√
7.当应用程序中某广播在AndroidMainifest进行注册后,即使该应用程序关闭后,也可以
接受操作系统发出的广播信息√
8.当Antivity的启动模式设置为SingleTop表示当该Anctivity的实例在栈顶时只会产生一个
实例。√
9.关于res/raw目录是会转换为二进制的格式然后原封不动的存储到设备上×
10.UIthread 通常就是main thread,Android启动程序时会替它建立一个MessageQueue√简答题
1. 简述Android 平台的特征有哪些。
开放性、
挣脱运行商的束缚、
丰富的硬件选择、
无缝结合的Google应用
2.简述Android 平台开发环境搭建的步骤。
答:安装Java JDK,
安装Eclipse,
安装Android SDK,
搭建Eclipse集成开发环境(IDE)、
配置ADT(Android Development Tools)、
创建AVD(Android Virtual Device)
3.简述Android系统架构从高到低的几个层次。
答:四个层次,分别是:
应用程序层(Applications)、
应用程序框架层(Application Framework)、
各种库(Libraries)和运行环境(Runtime)、
Linux内核(Linux kernel)
4.应用程序的基本组件有哪些?
答:Activity、
Service、
Content Provider、
BroadCast Receiver
5.Android根据应用程序的组件以及组件当前运行状态将所有的进程按重要性程度从高到低划分为几个?
答:可以划分为5个:
前台进程、可见进程、服务进程、后台进程、空进程
6.随着Activity的创建和销毁,可能会经历哪四种状态?
答:活动状态:当前的Activity,位于Activity栈顶,用户可见,并且可以获得焦点暂停状态:失去焦点的Activity,依然可见,即使在内存低的情况下,也不会被系统杀死
停止状态:该Activity被其他Activity所覆盖,不可见,但是仍然保存所有的状态和信息。当内存低的情况下,它将要被系统杀死
销毁状态:该Activity结束,或Activity所在的Dalvik进程结束
7.使用资源包括哪几种方法?
答:在代码里使用资源类;
在代码里调用资源类并实例化;
从其他资源类里引用
8.AndroidManifest.xml主要包含哪些功能?
答:说明application的java数据包,数据包名是application的唯一标识描述application的component
说明application的component运行在那个process下
声明application的权限,用以访问受保护的API,以及与其他application进行交互
声明application的其他必备权限,用以与component进行交互
列举application运行时所需要的配置信息,这些声明信息只有在程序开发和测试时存在,在发布前被删除
声明application所需要的Android API的最低级版本
列举application所需要链接的库
9.应用程序的界面布局主要有哪些?
答:线性布局(LinearLayout)、
表格布局(TableLayout)、
相对布局(RelativeLayout)、
帧布局(FrameLayout)
10.Android应用程序的菜单有哪几种?
答:Android应用程序的菜单有3种:
选择菜单(Option Menu)、
上下文菜单(Context Menu)、
子菜单(Sub Menu)
11.在界面上创建一个Spinner(含数据选项)的步骤。
答:1、在布局文件中添加
2、编写用于指定列表项的数组资源文件,并将其保存在res/values目录中,在该
文件
中添加一个字符串组
12.现行布局中属性orientation的作用是什么?
答:用于设置布局管理器内组件的排列方式,其可选的值为horizontal和vertical,默认值为vertical
13.Android中实现事件处理的步骤?
答:(1)将事件监听器注册到事件源
(2)触发事件源上的事件
(3)生成时间对象
(4)触发事件监听器,事件被作为参数传入事件处理器
(5)调用事件处理器做出响应
14.简述Android平台提供了那些数据存储方法。
答:Preferences、
File、
SQLite、
ContentProvider,
网络
15.简述Android模拟器中应用程序使用SD卡的步骤。
答:(1)调用Environment的getExternalStorageState()方法判断手机上是否插入了SD卡,并且应用程序具有读写SD卡的权限
(2)调用Environment的getExternalDirectory()方法来获取外部存储器,也就是SD卡的目录
(3)使用FileOutputStream、FileInputStream、FileReader和FileWriter来读写SD 卡
16.简述创建或打开一个SQLite数据库的方法有哪些?
答:openDataBase、
openOrCreateDataBase
17.使用ContentProvider来实现数据共享,都涉及到哪些辅助类。
答:onCreate()、
insert()、
delete()、
update()、
query()、
getType()
18.开发ContentProvider的步骤
答:(1)开发一个ContentProvider子类,并实现增、删、改、查等方法(2)在AndroidManifest.xml里面注册该ContentProvider
19.startService()和bindService()启动服务的区别:
服务不能自己运行,需要通过调用startService()或bindService()方法启动服务。这两个方法都可以启动Service,但是它们的使用场合有所不同。
1.使用startService()方法启用服务,调用者与服务之间没有关连,即使调用者退出了,服务仍然运行。
使用bindService()方法启用服务,调用者与服务绑定在了一起,调用者一旦退出,服务也就终止。
2.采用startService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onStart()方法。如果调用startService()方法前服务已经被创建,多次调用startService()方法并不会导致多次创建服务,但会导致多次调用onStart()方法。采用startService()方法启动的服务,只能调用Context.stopService()方法结束服务,服务结束时会调用onDestroy()方法。
3.bindService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onBind()方法。这个时候调用者和服务绑定在一起,调用者退出了,系统就会先调用服务的onUnbind()方法,接着调用onDestroy()方法。如果调用bindService()方法前服务已经被绑定,多次调用bindService()方法并不会导致多次创建服务及绑定(也就是说onCreate()和onBind()方法并不会被多次调用)。如果调用者希望与正在绑定的服务解除绑定,可以调用unbindService()方法,调用该方法也会导致系统调用服务的onUnbind()-->onDestroy()方法。
20. 请解释下在单线程模型中Message、Handler、MessageQueue、Looper之间的关系。Handler简介:
一个Handler允许你发送和处理Message和Runable对象,这些对象和一个线程的MessageQueue相关联。每一个线程实例和一个单独的线程以及该线程的MessageQueue相关联。当你创建一个新的Handler时,它就和创建它的线程绑定在一起了。这里,线程我们也可以理解为线程的MessageQueue。从这一点上来看,Handler把Message和Runable对象传递给MessageQueue,而且在这些对象离开MessageQueue时,Handler负责执行他们。
Handler有两个主要的用途:(1)确定在将来的某个时间点执行一个或者一些Message
和Runnable对象。(2)在其他线程(不是Handler绑定线程)中排入一些要执行的动作21. handler机制的原理
andriod提供了Handler 和 Looper 来满足线程间的通信。Handler先进先出原则。Looper 类用来管理特定线程内对象之间的消息交换(MessageExchange)。
1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的MessageQueue(消息队列)。
2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到MessageQueue里;或者接收Looper从Message Queue取出)所送来的消息。
3) Message Queue(消息队列):用来存放线程放入的消息。
4)线程:UIthread 通常就是main thread,而Android启动程序时会替它建立一个MessageQueue。