您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > Android教程01-平台概述
Android课程讲义智能手机开发2010.03.浙江大学计算机学院课程结构目标:了解智能手机开发现状,Android平台体系结构和应用程序模型,覆盖了几个主要技术应用。平台综述开发环境程序结构数据存取网络连接硬件访问图形编程用户界面HelloWorldHelloAndroidFileAndroidHttpAndroidCameraAndroidHelloAndroid浙江大学计算机学院课程结构Android平台综述:平台介绍、开发者社区开发环境:构建Android开发环境应该程序:应用程序结构典型应用:用户界面图形编程数据存取网络连接硬件访问浙江大学计算机学院获取Android资料的途径有时需要翻墙下载SDK等相关软件查看文档在线帮助开发社区1、平台概述智能手机开发2010.06.浙江大学计算机学院开放手机联盟开放手机联盟,OpenHandsetAlliance:是美国Google公司与2007年11月5日宣布组建的一个全球性的联盟组织。联盟将会支持Google发布的Android手机操作系统或者应用软件,共同开发名为Android的开放源代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类。目前,联盟成员数量已经达到了43家。浙江大学计算机学院移动手机联盟创始成员Aplix、Ascender、Audience、Broadcom、中国移动、eBay、Esmertec、谷歌、宏达电、英特尔、KDDI、LivingImage、LG、Marvell、摩托罗拉、NMS、NTTDoCoMo、Nuance、Nvidia、PacketVideo、高通、三星、SiRF、SkyPop、SonicNetwork、SprintNextel、Synaptics、TAT、意大利电信、西班牙电信、德州仪器、T-Mobile和WindRiver。浙江大学计算机学院浙江大学计算机学院GooglePhone浙江大学计算机学院OHA与AndroidOHA是一个软硬件开发者组织,包括Google,NTTDoCoMo,SprintNextel,andHTC…目标:加速智能移动设备的发展提供用户更多更好更便宜的服务由OHA开发的Android™,是第一个完整的、开放的、免费的智能移动开发平台。浙江大学计算机学院AndroidAndroid软件系列包括操作系统、中间件和一些关键应用。Android是基于JAVA的系统,运行在Linux2.6核上。AndroidSDK提供多种开发所必要的工具与API。浙江大学计算机学院特点1应用框架可以重复使用,其组件也可以更换。Dalvik虚拟机针对移动设备进行了优化。优化的图形能力支持2D、3D图形(OpenGLES1.0)。集成了基于开源WebKit引掣的浏览器。SQLite作为结构化数据存储。浙江大学计算机学院特点2多媒体支持多种音频、视频格式。GSMTelephony(hardwaredependent)支持蓝牙Bluetooth,3G和WiFi支持照相机、GPS、指南针和加速度仪等传感器硬件。丰富的开发环境。包括模拟机、调试工具、内存运行检测,以及为EclipseIDE所写的插件。浙江大学计算机学院Android的优势源代码完全开放,便于开发人员更清楚的把握实现细节,便于提高开发人员的技术水平,有利于开发出更具差异性的应用。采用了对有限内存、电池和CPU优化过的虚拟机Dalvik,Android的运行速度比想象的要快很多。运营商(中国移动等)的大力支持,产业链条的热捧。良好的盈利模式(3/7开),产业链条的各方:运营商、制造商、独立软件生产商都可以获得不错的利益。将移动终端的评价标准从硬件向软件转变,极大的激发了软件开发者的热情。Android的源代码遵循ApacheV2软件许可,而不是通常的GPLv2许可。有利于商业开发。具有强大的Linux社区的支持。浙江大学计算机学院Android的不足由于采用了Java作为应用开发语言,目前可用的传统第三方应用还很少,但由于Android是一款完全开源的移动计算平台,相信第三方应用会很快的丰富起来。Google提供了一套Java核心包(J2SE5,J2SE6)的有限子集,尚不承诺遵守Java任何Java规范,可能会造成Java阵营的进一步分裂。现有应用完善度不太够,需要的开发工作量较大。基于QEMU开发的模拟器调试手段不十分丰富,只支持通话、SMS等,速度慢。暂不具备PushMail和Office(DataViz、QuickOffice计划近期推出)功能,目前主要面向的是普通消费者用户,对商业用户支持尚弱。浙江大学计算机学院系统环境AndroidSDK所支持的操作系统:WindowsXP(32-bit)orVista(32-or64-bit)MacOSX10.4.8orlater(x86only)Linux(testedonLinuxUbuntuDapperDrake)浙江大学计算机学院Android的系统架构浙江大学计算机学院LinuxKernelAndroid基于Linux内核,但不是Linux内核提供系统核心服务,如进程、内存、电源管理,网络连接,驱动与安全等。并不包括全部的Linux。浙江大学计算机学院Android内核Linux内核位于硬件和软件堆之间的抽象层核心服务:安全机制、内存管理、进程管理、网络、硬件驱动。内核扮演的是硬件层和系统其它层次之间的一个抽象层的概念。操作系统的初始化和编程接口和标准的Linux系统是有所不同的。浙江大学计算机学院LibrariesBionicLibcFunctionLibrariesNativeServersHardwareAbstractionLibraries浙江大学计算机学院LibrariesC/C++库:被各种Android组件使用通过应用程序框架开发者可以使用其功能包括:媒体库:MPEG4H.264MP3JPGPNG.....WebKit/LibWebCore:Web浏览引擎SQLite关系数据库引擎2D,3D图形库、引擎浙江大学计算机学院FunctionLibrariesWebKit基于开源WebKit的浏览器支持CSS、Javascript、DOM、Ajax多媒体框架基于PacketVideoOpenCORE平台支持标准音频、视频SQLite轻型数据库,支持多种平台浙江大学计算机学院NativeServers-Surface为多种应用提供2D、3D表面设计浙江大学计算机学院NativeServers-Audio音频处理浙江大学计算机学院HardwareAbstractionLibs硬件虚拟层UserspaceC/C++librarylayer硬件接口驱动使Android平台逻辑与硬件接口分离浙江大学计算机学院AndoidRuntime应用开发语言:JavaDalvik虚拟机指令:DalvikExcutableJava标准库把java代码编译为Dalvik可执行文件(dexformat)浙江大学计算机学院运行环境核心库提供的Java功能Dalvik虚拟机依赖于Linux内核,可同时运行多个Dalvik虚拟机,每一个Android应用程序在它自己的DalvikVM实例中运行VM执行优化的Dalvik可执行文件(.dex)Dx-工具把编译过的Java文件转换为dex文件浙江大学计算机学院DalvikVirtualMachineAndroidcustomimplementationvirtualmachineProvidesapplicationportabilityandruntimeconsistencyRunsoptimizedfileformat(.dex)andDalvikbytecodeJava.class/.jarfilesconvertedto.dexatbuildtimeDesignedforembeddedenvironmentSupportsmultiplevirtualmachineprocessesperdeviceHighlyCPU-optimizedbytecodeinterpreterEfficientlyUsingruntimememoryCoreLibrariesCoreAPIsforJavalanguageprovideapowerful,yetsimpleandfamiliardevelopmentplatform浙江大学计算机学院DVMvsJVMDVMGoogleDalvikexcutableJVMSunJavabytecode浙江大学计算机学院浙江大学计算机学院ApplicationsFrameworkActivitymanager管理运行应用程序ContentProvider在各应用之间共享数据ResourceManager管理非代码资源NotificationManager显示用户提示和状态栏ViewsSystem可扩展显示,可构建UI浙江大学计算机学院应用和框架核心应用,例如联系人,电子邮件,电话,浏览器,日历,地图,...充分访问所有核心应用框架API简化组件的重用用Java编写应用程序浙江大学计算机学院ApplicationsJAVA编写的应用程序浙江大学计算机学院开发环境IDE–EclipseEclipseplug-in-ADTSoftwareDevelopmentKit(SDK)AndroidEmulatorDebuger浙江大学计算机学院ConstantsintBASEOct.2008Theoriginal,first,versionofAndroid.intBASE_1_1Feb.2009FirstAndroidupdate,officiallycalled1.1.intCUPCAKEMay2009Android1.5.intCUR_DEVELOPMENTMagicversionnumberforacurrentdevelopmentbuild,whichhasnotyetturnedintoanofficialrelease.intDONUTSep.2009Android1.6.intECLAIRNov.2009Android2.0:Applicationstargetingthisoralaterreleasewillgetthesenewchangesinbehavior:TheService.onStartCommandfunctionwillreturnthenewSTART_STICKYbehaviorinsteadoftheoldcompatibilitySTART_STICKY_COMPATIBILITY.intECLAIR_0_1Dec.2009Android2.0.1intECLAIR_MR1Jan.2010Android2.1浙江大学计算机学院Thankyou!
本文标题:Android教程01-平台概述
链接地址:https://www.777doc.com/doc-3394294 .html