您好,欢迎访问三七文档
GoogleAndroid智能手机应用开发basedonandroid2011.5内容包括:1、Android平台概述2、搭建Android开发环境3、第一个Android应用程序4、Android用户界面设计5、Activity、Intent、Service、BroadcastReceiver6、Android中的数据存取7、Android的多媒体应用8、应用实例:a、b、c、d课程结构开放手机联盟(OHA)Android平台综述:平台介绍、开发者社区开发环境:构建Android开发环境应用程序:应用程序结构典型应用:用户界面、图形编程数据存取、网络连接硬件访问平台综述开发环境程序结构数据存取网络连接硬件访问图形编程用户界面获取Android资料的途径下载sdk等相关软件查看文档在线帮助开发社区国内需要代理才能访问newssdk下载开发FAQ、源码下载移植GoogleAndroid1、Android平台概述aboutandroid开放手机联盟开放手机联盟(OpenHandsetAlliance):美国Google公司于2007年11月5日发起组建的一个全球性的联盟组织。网址:联盟支持Google可能发布的手机操作系统或者应用软件,共同开发名为Android的开放源代码的移动系统开放手机联盟成员已达80家,包括五大类:手机制造商、手机芯片商移动运营商软件开发商、软件服务商联盟创始成员Aplix、Ascender、Audience、Broadcom、中国移动、eBay、Esmertec、谷歌、宏达电、英特尔、KDDI、LivingImage、LG、Marvell、摩托罗拉、NMS、NTTDoCoMo、Nuance、Nvidia、PacketVideo、高通、三星、SiRF、SkyPop、SonicNetwork、SprintNextel、Synaptics、TAT、意大利电信、西班牙电信、德州仪器、T-Mobile和WindRiverGooglePhoneOHA与AndroidOHA是一个软硬件开发者组织,包括Google,NTTDoCoMo,SprintNextel,andHTC…目标:加速智能移动设备的发展提供用户更多更好更便宜的服务由OHA开发的Android™,是第一个完整的、开放的、免费的智能移动开发平台。AndroidAndroid软件系列包括操作系统、中间件和一些关键应用基于Linux2.6内核,使用Java开发应用程序AndroidSDK提供多种开发所必要的工具与API特点1应用框架可以重复使用,其组件也可以更换Dalvik虚拟机针对移动设备进行了优化优化的图形能力支持2D/3D图形(OpenGLES1.0)集成了基于开源WebKit引掣的浏览器采用SQLite实现结构化数据存储特点2多媒体支持多种音频、视频格式GSMTelephony(hardwaredependent)支持蓝牙Bluetooth,3G和WiFi支持照相机、GPS、指南针和加速度仪等传感器硬件丰富的开发环境,包括模拟机、调试工具、内存运行检测,以及为EclipseIDE所写的插件优势:开放性源代码完全开放,便于开发人员更清楚的把握实现细节,便于提高开发人员的技术水平,有利于开发出更具差异性的应用开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益之处在于丰富的软件资源开放的平台也会带来更多竞争,如此一来,消费者将可以用更低的价位购得手机优势:挣脱运营商的束缚在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制自从iPhone、GPhone上市,用户可以更加方便地连接网络,运营商的制约减少随着2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈优势:丰富的硬件选择由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容例如:从诺基亚Symbian手机改用苹果iPhone,此时还可将Symbian中优秀的软件带到iPhone上使用,联系人等资料更是可以方便地转移优势:不受限制的开发商采用了对有限内存、电池和CPU优化过的Dalvik虚拟机,Android的运行速度比想象的要快很多Android的源代码遵循ApacheV2软件许可,而不是通常的GPLv2许可,更有利于商业开发Android平台提供给第三方开发商一个十分宽泛、自由的环境,催生各种新颖别致的应用软件具有强大的Linux社区的支持优势:良好的盈利模式3-7开的盈利模式,使得产业链条的各方:运营商、制造商、独立软件生产商都可以获得不错的利益将移动终端的评价标准从硬件向软件转变,极大的激发了软件开发者的热情优势:无缝结合的Google应用Google成为最大的互联网络搜索引擎已经有10多年历史从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带Android平台手机将无缝结合这些优秀的Google服务Android不足由于采用了Java作为应用开发语言,目前可用的传统第三方应用还很少Google提供了一套Java核心包(J2SE5,J2SE6)的有限子集,尚不承诺遵守任何Java规范,可能会造成Java阵营的进一步分裂基于QEMU开发的模拟器调试手段不十分丰富,只支持通话、SMS等,速度慢暂不具备PushMail和Office功能,目前主要面向的是普通消费者用户,对商业用户支持尚弱系统环境AndroidSDK所支持的操作系统:WindowsXP(32bit)orVista(32/64bit)MacOSX10.5.8orlater(x86only)Linux(testedonLinuxUbuntuDapperDrake)Android的系统架构LinuxKernelLinuxKernelAndroid基于Linux内核,但不是Linux内核提供系统核心服务,如进程、内存、电源管理,网络连接,驱动与安全等并不包括全部的LinuxLinuxKernelLinux内核位于硬件和软件堆之间的抽象层核心服务:安全机制、内存管理、进程管理、网络、硬件驱动内核扮演的是硬件层和系统其它层次之间的一个抽象层的概念操作系统的初始化和编程接口和标准Linux系统有所不同LibrariesLibrariesBionicLibc:Google自行开发,未采用标准glibcFunctionLibrariesNativeServersHardwareAbstractionLibrariesBionicLibcC/C++库:通过应用程序框架供各种Android组件使用,其功能包括:媒体库:MPEG4H.264MP3JPGPNG.....WebKit/LibWebCore:Web浏览引擎SQLite关系数据库引擎2D,3D图形库、引擎FunctionLibrariesWebKit基于开源WebKit的浏览器支持CSS、Javascript、DOM、Ajax多媒体框架基于PacketVideoOpenCORE平台支持标准音频、视频SQLite轻型数据库,支持多种平台NativeServers:Surface为多种应用提供2D、3D表面设计NativeServers:Audio音频处理HardwareAbstractionLibraries硬件抽象层HALUserspaceC/C++librarylayer硬件接口驱动作用:隔离硬件接口与Android平台逻辑AndoidRuntimeAndoidRuntime应用开发语言:JavaDalvik虚拟机指令:DalvikExcutableJava标准库把Java代码编译为Dalvik可执行文件(dex)AndoidRuntime核心库提供的Java功能、Dalvik虚拟机依赖于Linux内核可同时运行多个Dalvik虚拟机每个Android应用程序在它自己的DalvikVM实例中执行优化的Dalvik可执行文件(.dex)Dx-工具把编译过的Java文件转换为dex文件DalvikVirtualMachineAndroidcustomimplementationvirtualmachineProvidesapplicationportabilityandruntimeconsistencyRunsoptimizedfileformat(.dex)andDalvikbytecodeJava.class/.jarfilesconvertedto.dexatbuildtimeDesignedforembeddedenvironmentSupportsmultiplevirtualmachineprocessesperdeviceHighlyCPU-optimizedbytecodeinterpreterEfficientlyUsingruntimememoryCoreLibrariesCoreAPIsforJavalanguageprovideapowerful,yetsimpleandfamiliardevelopmentplatformDVMvs.JVMDVMGoogleDalvikexcutablebytecode对便携设备有限的系统资源和供电进行了专门优化JVMSunJavabytecode跨平台ApplicationsFrameworkApplicationsFrameworkActivitymanager管理运行应用程序ContentProvider在各应用之间共享数据NotificationManager显示用户提示和状态栏ViewsSystem可扩展显示,用于构建UIApplicationsFramework核心应用:联系人,邮件,电话,浏览器,日历,地图……充分访问所有核心应用的API简化组件的重用用Java编写应用程序ApplicationsApplicationsJAVA编写的应用程序程序员、软件服务商……开发环境IDE:EclipseEclipseplug-in:ADTSoftwareDevelopmentKit:AndroidSDKAndroidEmulator:AVDDebuger:ADB、DDMSAndroid版本历史自1.5起,Android用甜点作为系统版本代号,按26个字母的数序:Android1.1:2008年9月,代表机型:HTCG1Android1.5Cupcake:2009年5月Android1.6Donut:2009年9月Android2.0Eclair:2009年10月Android2.1Eclair:2009年10月Android2.2Froyo:2010年5月20日Android2.3Gingerbread:2010年12月Android2.4IceCreamSandwich:即将发布Android3.0Honeycomb:2011年1月,针对平板设备的优化最新消息2011年5月,在旧金山举办的I/O开发者大会上,Google展示了Android2.4版,侧重于解决设备分散问题,统一手机平台2011年5月,installer_r11开放下载
本文标题:安卓系统设计
链接地址:https://www.777doc.com/doc-3973794 .html