1、安卓核心组件有哪些?提供界面显示的Activtiy,提供后台计算的Service,提供进程间通信的Intent和提供广播接收的BroadcastRsceiver.安卓用什么数据库?SQLite2、R.java 是什么文件?干什么用的?在什么地方?R.java文件是Android项目自动生成的终态类R.java文件除了有自动标识资源的"索引"功能之外,还有另一个主要的功能,当"res"目录中的某个资源在应用中没有被使用到,在该应用被编译的时候系统就不会把对应的资源编译到该应用的APK包中,这样可以节省Android手机的资源。
"gen/"目录下3、安卓平台架构分为几层?各是什么?Android 系统分为四层,从下往上分别是Linux Kernel,Libraries 和Android Runtime,Application Frameworl,Applications.4、在manifest文件中如何注册一个activity?<activity android:name=".MainActivity"></activity>5、Activity的生命周期有哪些状态?状态转换时调用的方法各是什么?一个Activity有三种状态:激活或者运行状态,运行在前台(在当前Activity栈的栈顶)。
暂停状态,失去了焦点但是仍然对用户可见,比如有其他的Activity在它之上,或者透明或者没有遮住整个屏幕。
停止状态,被其他Activity覆盖,需要注意的是包括暂停状态在内,这两种状态都仍然保存了所有状态信息,直到被系统终止。
1 2 3 4 5 6 7 void onCreate() void onStart() void onRestart() void onResume() void onPause() void onStop() void onDestroy()6、同一个应用之间Activity互相调用要用什么Intent(隐式、显式?还是什么?)?显式Intent直接用组件的名称定义目标组件,这种方式很直接。
但是由于开发人员往往并不清楚别的应用程序的组件名称,因此,显式Intent更多用于在应用程序内部传递消息。
比如在某应用程序内,一个Activity启动一个Service。
7、什么是Dalvik Virtual Machine?(Dalvik虚拟机器)是一种暂存器型态的虚拟机器。
简称DVM,DVM在撰写开发时就已经设想用最少的记忆体资源来执行,以及同时可执行多个VM为前提来开发的。
8、什么是Content Provider?Content Provider,即内容提供商或者内容提供器内容提供器是应用程序之间共享数据的接口,Android系统将这种机制应用到方方面面。
比如:联系人提供器专为不同应用程序提供联系人数据;设置提供器专为不同应用程序提供系统配置信息,包括内置的设置应用程序等。
9、什么是Broadcast Receiver?①广播接收器是一个专注于接收广播通知信息,并做出对应处理的组件。
②应用程序可以拥有任意数量的广播接收器以对所有它感兴趣的通知信息予以响应。
所有的接收器均继承自BroadcastReceiver基类。
③广播接收器没有用户界面。
然而,它们可以启动一个activity来响应它们收到的信息,或者用NotificationManager来通知用户。
通知可以用很多种方式来吸引用户的注意力──闪动背灯、震动、播放声音等等。
一般来说是在状态栏上放一个持久的图标,用户可以打开它并获取消息。
10、什么是Intent?Intent(意图)主要是解决Android应用的各项组件之间的通讯。
Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。
11、什么是Service,Service有哪些状态?Service是android 系统中的四大组件之一(Activity、Service、BroadcastReceiver、ContentProvider),它跟Activity的级别差不多,但不能自己运行只能后台运行,并且可以和其他组件进行交互。
onCreate() , onBind()2种状态12、安卓的资源有哪些类型?各放在什么位置?Bool 用XML格式定义的布尔值文件位置:res/values/filename.xmlColor 用XML格式定义的颜色值文件位置:res/values/colors.xmlDimensin 用XML格式定义的数量值文件位置:res/values/filename.xmlID 用XML格式定义的紫苑唯一ID 文件位置:res/values/filename.xmlInteger 用XML格式定义的整数资源文件位置:res/values/filename.xmlInteger Array 用XML格式定义的整数数组文件位置:res/values/filename.xmlTyped Array 用XML格式定义的TypedArray 文件位置:res/values/filename.xml13、IPC是什么意思?和Intent有什么关系?IPC是内部进程通信的简称,是共享"命名管道"的资源。
Android中的IPC机制是为了让Activity和Service之间可以随时的进行交互,故在Android中该机制,只适用于Activity和Service之间的通信,类似于远程方法调用,类似于C/S模式的访问。
通过定义AIDL接口文件来定义IPC接口。
Servier端实现IPC接口,Client端调用IPC接口本地代理14、Broadcast有哪几种?区别?实现广播的方法有两种。
一种是在androidmanifest.xml当中去注册广播,另一种方法是在代码中动态注册广播,这两种方法虽然都能实现广播机制,但是还是有很大不同,所以运用也要分情况。
如果我们在androidmanifest.xml中去定义的话,那么该广播是在activity 结束之后也不会结束的,原因在于它已经写在了manifest.xml文件当中,也就是注册到了系统当中,所以无论你的activity是否存在,对于该广播没有影响。
而在java代码中动态注册广播,在该activity结束后,我们可以注销该广播,也就是它随着activity的消失而消失15、Ordered broadcast如何决定接收者的顺序?Ordered Broadcast的接收者将按预先声明的优先级依次接受Broadcast。
16、安卓原生支持几种IO机制?各自有什么特点?17、安卓原生的content provider有哪些?AlarmClock,Browser,CalendarContract,CallLog,ContactsContract(包括有Contacts,Groups,PhoneLookup等),MediaStore(Audio 『Albums,Artists,Genres,Playlists』,Files,Images,Video)和Setting.18、如何创建一个content provider?打开EOE工程,创建一个新的Eoe类,扩展Content Provider。
重写onCreate、getType、query、insert、delete和update方法。
19、安卓下访问一个文件,要写到文件最后,要用什么模式打开文件?20、判断SD卡是否可用,用什么方法?android.telephony.TelephonyManager、android.os.Environment及android.app.Activity.getSystemService 方法21、Shared Preferences 是什么?有什么用?haredPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置比如窗口状态,一般在Activity中重载窗口状态onSaveInstanceState保存一般使用SharedPreferences完成,它提供了Android平台常规的Long长整形、Int整形、String字符串型的保存22、要从远端URL播放多媒体文件用什么stream?adodb.stream23、创建一个安卓数据库都有哪些途径?24、安卓有几种布局管理器(Layout)?各有什么特点?1.FrameLayout:children按照从左上开始的顺序排列,主要用于tabed view或者图片切换功能;最简单的布局模型,在这种布局下每个添加的子控件都被放在布局的左上角,并覆盖在前一子控件的上层。
2.线性布局(LinearLayout):children排列成一行多列或者一列多行的形式,应该是应用程序中最常用的布局方式,它提供了控件水平或者垂直排列的模型,同时我们可通过设置子控件的weight布局参数控制各个控件在布局中的相对大小。
3.相对布局(RelativeLayout):children是相互之间相关位置或者和他们的parent位置相关,参照控件可以是父控件,也可以是其他子控件,但被参照的控件必须要在参照它的控件之前定义。
相对布局模型所涉及的属性设置比较多,但并不复杂。
4.TableLayout:children按照行列的排序,类似于html的table;模型以行列的形式管理子控件,每一行为一个TableRow的对象,也可为一个View的对象。
TableRow可添加子控件,每添加一个子控件为一列。
5.坐标布局(AbsoluteLayout)的子控件需要指定相对于此坐标布局的横、纵坐标值,否则将会像FrameLayout那样被排在左上角。
手机应用需要适用于不同的屏幕大小,而这种布局模型不能自适应屏幕尺寸大小,所以应用得相当少。
25、按下button,被调用的回调函数是什么?callback()26、安卓内建的theme有哪些?1 .Theme 2. Theme_Black 3. Theme_Light 4. Theme_Dialog 5. Theme_InputMethod6. Theme_Panel 7 .Theme_Wallpaper27、各种对话框共同的父类是是什么?28、View类是什么?起什么作用?View作为UI的最基本的元件,负责绘制UI元素和界面动作的监听。
可以认为是Button,文本域等界面元素或者其他View的容器。