android平台体系结构的层次划分,Android复习
Q:简述Android平台体系结构的层次划分,并说明各个层次的作⽤。
A:Android是基于Linux内核的软件平台和操作系统,采⽤了软件堆栈的架构,共分为4层:第⼀层Linux内核,提供有操作系统内核管理的底层基础功能;第⼆层中间层,由函数库和Android运⾏时构成;第三层应⽤程序框架层,提供了Android平台的管理功能和组件重⽤机制;第四层应⽤程序层,提供了⼀系列核⼼应⽤程序。
Q:在AndroidSDK中,Android模拟器,Android调试桥和DBMS 是Android应⽤程序开发过程中经常使⽤的⼯具,简述这三个⼯具的⽤途。
A:Android模拟器
⽀持多种屏幕分辨率和不同的外观,⽀持加载SD卡映像⽂件,更改模拟⽹络状态,延迟
和速度,模拟电话呼叫和接收短信等;不⽀持接听真实电话,USB连接,摄像头捕获,设
备⽿机,电池电量和AC电源检测,SD卡插拔检查和使⽤蓝⽛设备
Android调试桥(Android Debug Bridge,ADB)
⽤于连接Android设备或模拟器的⼯具,负责将应⽤程序安装到模拟器和设备中,或从
模拟器或设备中传输⽂件
DDMS
Android系统中内置的调试⼯具,监视Android系统中进程、堆栈信息,查看logcat⽇
志,实现端⼝转发服务和屏幕截图功能,模拟器电话呼叫和SMS短信,以及浏览Android
模拟器⽂件系统等.
Q:简述Activity声明周期的4种状态,以及状态之间的变换关系。
A:Activity⽣命周期指Activity从启动到销毁的过程Activity启动后处于活动状态,此时Activity在⽤户界⾯中处于最上层,完全能被⽤
户看到,能够与⽤户进⾏交互。如果⽤户启动了新的Activity,部分遮挡了当前的
Activity,则当前的Activity转换为暂停状态,该Activity不再处于⽤户界⾯的最上
层,且不能够与⽤户进⾏交互。如果⽤户启动了新的Activity完全遮挡当前的Activity,
则当前的Activity转换为停⽌状态,停⽌状态的Activity 将优先被终⽌。活动状态的
Activity被⽤户关闭后,或暂停状态或停⽌状态的Activity被系统终⽌后Activity便
进⼊了⾮活动状态。
简述android概述Q:简述Android系统三⼤菜单的特点以及使⽤⽅式
A:菜单是应⽤程序中⾮常重要的组成部分,在不占⽤界⾯空间的前提下,为应⽤程序提供了统⼀的功能和设置界⾯,为程序开发⼈员提供了易于使⽤的编程。
Android系统⽀持三种菜单
选项菜单(Option Menu):按设备上Menu 键显⽰的菜单。
⼦菜单(Submenu):其它两种菜单都可以加⼊⼦菜单,但⼦菜单不能再嵌套⼦菜单
快捷菜单(Context Menu):长按特定界⾯view显⽰,跟具体的 view 绑定在⼀起,类
似PC上⿏标右键菜单。
Q:简述Intent的定义和⽤途.
A:Intent是⼀个动作的完整描述,包含了动作的产⽣组件、接收组件和传递的数据信息
Intent也可称为⼀个在不同组件之间传递的消息,这个消息在到达接收组件后,接收组
件会执⾏相关的动作,Intent为Activity、Service和BroadcastReceiver等组件提供
交互能⼒。Intent的⽤途:启动Activity和Service,在Android系统上发布⼴播消息.
Q:简述Service的基本原理和⽤途。
A:Service是Android系统提供的Service(服务)组件,不直接与⽤户进⾏交互,能够长期在后台运⾏,在实际应⽤中,有很多应⽤需要使⽤Service,经常提到的例⼦就是MP3播放器。Service被系统终⽌,在系统资源恢复后Service 也将⾃动恢复运⾏状态,因此可以认为Service是在系统中永久运⾏的组件。Service除了可以实现后台服务功能,还可以⽤于进程间通信(Inter Process
Communication,IPC),解决不同Android应⽤程序进程之间的调⽤和通讯问题。Q:简述R.java和l⽂件的⽤途
A:l是XML格式的Android程序声明⽂件,包含了Android系统运⾏Android程序前所必须掌握的重要信息,这些信息包括应⽤程序名称、图标、包名称、
模块组成、授权和SDK最低版本等R.java⽂件是ADT⾃动⽣成的⽂件包含对drawable、layout和values⽬录内的资源的引⽤指
针,Android程序能够直接通过R类引⽤⽬录中的资源。
Q:简述Android系统的4种基本组件Activity,Service,BroadcastReceiver和ContentProviser的⽤途。A: Activity是Android程序的呈现层,显⽰可视化的⽤户界⾯,并接收与⽤户交互所产⽣界⾯事件。Android应⽤程序可以包含⼀个或多个Activity,⼀般需要指定⼀个程序启动时显⽰的Activity。⼏乎所有的Activity都是和⽤户进⾏交互的,Activity主要关注视图窗体创建,对⽤户表现为全屏窗体。从视觉效果来看,⼀个Activity占据当前的窗⼝,响应所有窗⼝事件,具备有控件,菜单等界⾯元素。从内部逻辑来看,Activity需要为了保持各个界⾯状态,需要做很多持久化的事情,还需要妥善管理⽣命周期,和⼀些转跳逻辑。
Service⼀般⽤于没有⽤户界⾯,但需要长时间在后台运⾏的应⽤,可公开Service的程序接⼝,供其他进程调⽤。
Service是Android实现程序后台运⾏的解决⽅案,⽤于执⾏不需要和⽤户交互且要求长期运⾏的任务。不能运⾏在⼀个独⽴的进程当中,⽽依赖创建服务时所在的应⽤程序进程。只能在后台运⾏,可以和其他组件进⾏交互。Broadcast Receiver⽤来接收⼴播消息的组件,不包含任何⽤户界⾯。可以
启动Activity或者Notification通知⽤户接收到重要信息。⼴播接收器是⼀个专注于接收⼴播通知信息,并做出对应处理的组件。
ContentProvider是Android系统提供的⼀种标准的共享数据的机制,其他程序通过ContentProvider访问程序的私有数据.Android系统内部提供⼀些内置的ContentProvider,能够为应⽤程序提供重要的数据信息,同⼀份数据,⼿机内没有更多的空间存储两次以上。针对这种情况,Android提供了Content Provider,它是不同应⽤程序间共享数据的标准API,统⼀了数据访问⽅式。包括添加、删除、修改和查询等操作。
Q:简述6种界⾯布局的特点
A:线性布局(LinearLayout)是⼀种重要的界⾯布局,在线性布局中,所有的⼦元素都按照垂直或⽔平的顺序在界⾯上排列,如果垂直排列,则每⾏仅包含⼀个界⾯元素,如果⽔平排列,则每列仅包含⼀个界⾯元素;
框架布局(FrameLayout)是最简单的界⾯布局,是⽤来存放⼀个元素的空⽩空间,且⼦元素的位置是不能够指定的,只能够放置在空⽩空间的左上⾓,如果有多个⼦元素,后放置的⼦元素将遮挡先放置的⼦元素;
表格布局(TableLayout)是⼀种常⽤的界⾯布局,通过指定⾏和列将界⾯元素添加
到表格中,⽹格的边界对⽤户是不可见的。表格布局⽀持嵌套,可以将表格布局放
置在表格布局的表格中可以在表格布局中添加其他界⾯布局,例如线性布局、相对
布局等;
相对布局(RelativeLayout)是⼀种⾮常灵活的布局⽅式,能够通过指定界⾯元素
与其他元素的相对位置关系,确定界⾯中所有元素的布局位置,能够最⼤程度保证
在各种屏幕尺⼨的⼿机上正确显⽰界⾯布局
绝对布局(AbsoluteLayout)能通过指定界⾯元素的坐标位置,来确定⽤户界⾯的
整体布局绝对布局是⼀种不推荐使⽤的界⾯布局,因为通过X轴和Y轴确定界⾯元素位置后,Android系统不能够根据不同屏幕对界⾯元素的位置进⾏调整,降低了界⾯布局对不同类型和尺⼨屏幕的适应能⼒
⽹格布局(GridLayout)将⽤户界⾯划分为⽹格,界⾯元素可随意摆放在⽹格中,
⽹格布局⽐表格布局(TableLayout)在界⾯设计上更加灵活,在⽹格布局中界⾯元素可以占⽤多个⽹格,
⽽在表格布局只能将界⾯元素指定在⼀个表格⾏(TableRow)中,不能跨越多个表格⾏。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论