




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Android培训:Pro Android学习笔记之Android平台华迪教育/华迪信息/ 由于智能手机引入AP(应用处理器),Android在某种意义上是个人计算机,具有桌面计算机的完整架构,采用Linux-based OS stack来管理设备、内存和进程。Android的Java库覆盖电话,视频、连接、图形、UI编程等多个方面。Android SDK支持几乎全部的J2SE,除去UI的AWT和Swing部分,而用Android UI framework取而代之。 Android针对手持设备的受限内存、处理器速度和 电池能力进行优化Dalvik VM。Dalvik VM将所生成的Java calss文件封装到一个或多个Dalvik执行性文件(.dex)。最终在Android执行的代码,并不是Java Byte code,而是.dex文件。也就是你不能直接运行Java Byte code,需要转为.dex文件。应用开发者的Android架构视图 从应用开发者角度看Android软件stack。LinuxKernel处理设备驱动、资源访问、电源管理以及其他的OS工作。(Wei:我觉得这不准确,因为Android有改动,特别是HAL,且Linux社区没有接纳Android的贡献。)在内核之上是C/C+库,如 OPenGL,WebKit,FreeType(字体处理),SSL,libc,SQLit、Meida。Bionic是Android基于BSD的 Glibc,针对嵌入系统进行改良的libc版本,大小约为原来的一半。媒体库是基于PacketVideo的OpenCore,用于录制和播放音频及视 频格式。Surface管理器处理系统显示,支持2D和3D。Android采用Skia作为2D图形库,采用OpenGL ES来支持3D。 绝大部分的应用框架是通过DalvikVM来访问核心库。Dalvik VM运行多个VM实例。当Java应用访问核心库时,每个应用获得它自己的VM instance。(Wiki:Dalvik虚拟机器可以有多个实例,每个Android应用程序都用一个自属的Dalvik虚拟机器来执行,让系统在执行程序时可达到优化。Dalvik虚拟机器并非执行Java字节码,而是执行一种称为.dex格式的档案) Android Java库就是Android标准架构图中的应用框架层,包括电话、资源,位置、UI、内容提供者、和包管理器。开发者在这些API上进行应用开发。有些应用已经集成到系统上,如Home,联系人,电话,和浏览器。通过Android SDK开发应用Android模拟器。Android模拟器能支持90%的应用开发,但在USB连接、摄影和视频捕获,电池模拟,蓝牙,耳机,Wi-Fi,NFC和OpenGL ES上有限制。Android采用QEMU技术,是开源的“处理器模拟器”,允许一个OS模拟器在另一个OS上运行。(Wei:MeeGo的模拟器也是采用QEMU,此外还需要KVM,最大的问题是KVM虚拟化需要硬件的支持,即CPU必须支持VT,但不是所有桌面机的CPU都能支持,特别手提的CPU)Android UI。Android UI可以用XML脚本文件来定制UI应用的窗口,通过ID来获取在Java代码中进行控制。而屏幕或窗口在Android中称为activity。 View是Android基础的UI单位,可组合为view group。View内部使用cavase,painting和用户交互这些熟悉概念。在Android 3.0引入新UI概念fragment,目的是在大屏幕(平板)上处理多窗格,而fragment提供窗格的抽象。Android框架的一个关键概念是 activity窗口的生命周期管理。基础组件。Android 的UI框架引入新概念intent。Intent是一个进程内和进程间唤醒组件的机制。作为组件就是一段有明确生命周期的代码,如activity、 service,由事件唤起的receiver,都是组件。要调起组件,intent具有窗口消息,action,发布和订购模式,以及进程间通信。 Android对资源支持很直观,支持 string,bitmaps以及XML-basedView定义。自动生成文件R.java就是对资源的描述,每个自动生成的ID都对应在XML文件中 元素或整个XML文件。开发者可通过这些ID使用这些XML定义。这对于处理本地语言环境、设备大小适配等非常有帮助。 另一个新概念是content provider,数据源的抽象。先进UI概念。Android 引入很多先进的UI概念。包括采用XML方式来描述layout和menu,异步dialog(注意,不是Windows中MFC的同步方式的modal dialog),对动画的支持,包括frame-by-frame动画,视觉转换的渐变方式(放大、缩小,位移,旋转、角度)。Android通过 OpenGL ES支持3D图形。OpenGL ES是C库,Android沿用了J2ME中对Open ES定义的API,具体可以参考ProAndroid 3。 在HomeUI方面。Android支持live floder(是一种小型的应用层插件。它本身体现为桌面出现的图标,通过点击这些图标,将出现一个列表框,列表框中将显示数据信息。通过活动目录可以在不打开应用程序的情况下,在桌面就能查看其中的数据信息。)。但是随着对home screen widget的支持,livefloder的作用渐微。Android还提供Integrated Search,可以搜索设备和网络的信息,提供searchAPI。 此外还有自定义的手势、传感器控制、动态配置(如根据横竖屏进行的排版),平板的actionbar,Drag-and-drop(Android 4.0中可用于phone和pad)等。上面的这一些大都会在Pro Android 4后面章节中详细描述。其他。此 外还有Service组件,Media组件、Telephony组件,具体可以详细阅读Android SDK reference对package的说明。 Android通过应用的AndroidManifest.xml文件来体现这些概念,包括 activities的定义、service和contentprovider的注册,许可声明等等。 目前Andriod有超过50个包和过千个 class。除了andriod.*外,还包括java.*,javax.*,以及其他,如org.apache.http,org.json, ,org.xml.sax, org.xml
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年家居空间设计项目规划申请报告
- 2025年大庆炼化分公司春季高校毕业生招聘考前自测高频考点模拟试题及答案详解(夺冠)
- 2025年二级钢项目立项申请报告
- 山东中级经济师考试(运输经济民航专业知识与实务)模拟试题及答案(2025年)
- 2025年中级经济师资格考试(商业经济专业知识与实务)强化训练试题及答案
- 雨水管线及排涝设施提升改造工程环境影响报告书
- 在迪拜投资的财务风险评估与控制
- 物流枢纽公铁联运转运中心建设项目节能评估报告
- 小区应急预案海报
- 桥墩偏移应急预案
- 2025年学校少先队知识应知应会题库(含答案)
- 2026中国农业银行秋季校园招聘备考考试题库附答案解析
- 世界粮食日节粮我先行节约粮食我在行动宣传课件
- 工业厂区场地平整建设方案
- 2025年秋新人教版数学二年级上册整册同步教案
- (2025秋新版)青岛版科学三年级上册全册教案
- 第14课《渡荆门送别》课件-2025-2026学年统编版语文八年级上册
- 住院病人防止走失课件
- 2025内蒙古锡林郭勒盟西乌珠穆沁旗招聘社区工作者40人笔试模拟试题及答案解析
- 肺结核课件完整版本
- 高一语文必修上第三单元必背篇目理解性默写 (学生版)
评论
0/150
提交评论