安卓讲解框架一、安卓系统的前世今生1、安卓系统的诞生Android的诞生还要从Andy Rubin(安迪鲁宾)说起安迪鲁宾是一位硅谷著名的极客,他家的“门铃”是硅谷最昂贵的玩具:视网膜扫描仪他曾先后在苹果、General Magic、WebTV等公司工作,2000年参与创办了Danger公司该公司生产的Hiptop(T-Mobile Sidekick)智能具备上网、全键盘和照相功能,2003年曾在美国风行一时离开Danger之后,安迪鲁宾创办了新的公司,致力于研发操作系统因为Linus Torvalds把自己写的操作系统称为Linux,安迪鲁宾的名字是Andrew(Andy为Andrew 的昵称),再加上他本身是个机器人迷,所以新公司取名叫做Android安迪鲁宾的最初目标是想把Android打造成一个可以对任何软件设计人员开放的移动终端平台,很快这个公司就获得了青睐,很多人打算买下他的公司,而安迪鲁宾发了一封电子邮件给拉里·佩奇,告诉拉里·佩奇有人要跟他合伙的事情几周之后,Google就抢先把他的公司买下2007年11月5 号,Google宣布与其他33家厂商(包括摩托罗拉、华为、宏达电、三星、LG等)、芯片供货商、软硬件供货商、移动运营商联合组成开放联盟(Open Handset Alliance,OHA),并发布了名为Android的开放软件平台。
参与开放联盟的这些厂商,都会基于Android平台来开发新的业务,Android向厂商和移动运营商提供一个开放的平台,供它们开发创新性的应用软件Android基于Linux技术,由操作系统、中间件、用户界面和应用软件组成,允许开发人员自由获取、修改源代码,是一套具有开源性质的终端解决方案2008年9月22日,美国移动运营商T-Mobile USA在纽约正式发布第一款Google—T-Mobile G1该款为台湾宏达电代工制造,是世界上第一部使用Android操作系统的,支持WCDMA/HSPA网络,理论下载速率7.2Mbit/s,并支持Wi-Fi2、安卓系统的优点Android作为Google企业战略的重要组成部分,将进一步推进“随时随地为每个人提供信息”这一企业目标的实现,Google的目标是让移动通信不依赖于设备,甚至是平台Android系统具有如下5个特点:开放性Google与开放联盟合作开发了Android,Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望通过建立标准化、开放式的移动软件平台,在移动产业内形成一个开放式的生态系统应用程序无界限。
Android上的应用程序可以通过标准API(Application Programming Interface,应用程序编程接口)访问核心移动设备功能通过互联网,应用程序可以声明它们的功能可供其他应用程序使用应用程序是在平等的条件下创建的移动设备上的应用程序可以被替换或扩展,即使是拨号程序或主屏幕这样的核心组件应用程序可以轻松地嵌入网络应用程序可以轻松地嵌入HTML、JavaScript和样式表,还可以通过WebView显示网络内容应用程序可以并行运行Android是一种完整的多任务环境,应用程序可以在其中并行运行在后台运行时,应用程序可以生成通知以引动注意3、安卓系统架构Android分为4层,从高到底分别是应用层、应用框架层、系统运行库层和Linux内核层应用层:应用是用JAVA语言编写的运行在虚拟机上的程序Google最开始时就在Android系统中捆绑了一些核心应用,比如E-Mail客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序,等等应用框架层:这一层是编写Google发布的核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用,这样便简化了程序开发的架构设计,但是必须遵守其框架的开发原则。
Android系统特色组件丰富而又可扩展的视图(View):可以用来构建应用程序,它包括列表(List)、网格(Grid)、文本框(Text Box)、按钮(Button),以及可嵌入的Web浏览器内容提供器(Content Providers):它可以让一个应用访问另一个应用的数据(如联系人数据库),或共享它们自己的数据资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串、图形和布局文件(Layout file)通知管理器(Notification Manager):应用可以在状态栏中显示自定义的提示信息活动管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航退回功能窗口管理器(Window Manager):管理所有的窗口程序包管理器(Package Manager):Android系统内的程序管理系统运行库层:当使用Android应用框架时,Android系统会通过一些C/C++库来支持我们使用的各个组件,使其能更好地为我们服务Android系统的编程语言是JAVA语言,每个JAVA程序都运行在Dalvik虚拟机上与PC一样,每个Android应用程序都有自己的进程,Dalvik虚拟机只执行.dex的可执行文件。
当JAVA程序通过编译,最后还需要通过SDK中的dx工具转化成.dex格式才能正常在虚拟机上执行Google于2007年正式发布了Android SDK,作为Android系统的重要特性,Dalvik虚拟机也第一次进入了人们的视野它对内存的高效使用,以及在低速CPU上表现出的高性能,令人刮目相看Android系统可以简单地完成进程隔离和线程管理,每一个Android应用在底层都会对应一个独立的Dalvik虚拟机实例,其代码在虚拟机的解释下得以执行Dalvik虚拟机非常适合在移动终端上使用,相对于在桌面系统和服务器系统运行的虚拟机而言,它不需要很快的CPU计算速度和大量的内存空间根据Google的测算,64MB的内存已经能够让系统正常运转了其中24MB被用于底层系统的初始化和启动,另外20MB被用于启动高层服务Linux内核层:Android的核心系统服务基于Linux2.6内核,如安全性、内在管理、进程管理、网络协议栈和驱动模型等都依赖于该内核4、安卓与移动因特网通过比较几大厂商的商业模式,分析Android是如何实现Google的移动因特网战略的诺基亚的“四大支柱”诺基亚很早就意识到了将成为下一代的PC,其行业利润将越来越微薄。
于是它开始发展自己的“四大支柱”:音乐、游戏、地图和分享,而OVI(芬兰语的门)就是连接它们的门诺基亚在全球已经售出约10亿部,作为全球厂商的龙头,如果诺基亚能够通过提供基于的服务来增加用户对诺基亚的忠诚度,这就慢慢会形成一种服务上的差异,同时发展自己的社区而这种差异和社区,将使得诺基亚在行业日渐激烈的竞争中继续独占鳌头我们观察一下诺基亚不断推出的新可以发现,与OVI集成的服务越来越多,当与服务相结合时,用户体验会不断升级,同时用户的忠诚度也将增强,这也将成为诺基亚未来与Google和苹果公司竞争的重要武器苹果公司的“大超市”从iPod时期的iTunes Store到之后的iPhone App Store,苹果公司一直在延续它的“大超市”商业模式一方面,苹果公司是通过类似沃尔玛一样建立大超市的方式收取所谓的“上架费”另一方面,它又通过这个“大超市”来拉动硬件的销售,因为这个超市里的产品都只能在它的硬件上运行早期的iTunes Store牵涉了版权等问题,苹果公司创始人—史蒂夫·乔布斯为此还不得不花大力气和好莱坞谈判但现在的App Store则没有这么多麻烦,它提供了一个供程序员和公司自由出售产品的平台,可以说是苹果公司商业模式往“大超市”转换的更大一步。
如果App Store能同时平衡大量的供应和大量的需求,则必将形成良性循环,不断推动苹果公司的发展这也给行业提供了一个很好的愿景:在硬件利润逐步降低的时候,下一个行业核心价值会在哪里?如果你了解PC行业的历史,那么不难猜测的下一个价值链在哪里PC行业产业链的价值转变始于硬件,慢慢是软件,再后来是因特网我们相信,必然也会经历大致相同的历程Google的“云”诺基亚靠硬件起家,苹果公司是软硬兼施Google从诞生起就是一家因特网公司,它的目标就是不断扩大势力范围,从传统因特网转入移动因特网开发Android平台绝对不是Google的全部战略,在推出了Android不久以后Google立刻就推出了Android Market,与苹果公司不同的是,Google说不会从这里面拿一分钱,这里的利润完全由开发者和运营商获得这里我们不妨把Android Market比喻为网上的“淘宝”,所有的开发者、公司都可以在这个免费的平台上买卖东西,当人气越来越旺的时候,“淘宝”就成为了网上购物的代名词了当人们对计算机的使用正在从以PC桌面系统为中心转向以网络为中心时,认为Google只是一家搜索引擎公司的看法已经过时了。
Google的真正目标是取代个人PC或企业数据中心,成为全球的移动互联网中心,它想把传统因特网的“云”也带到移动因特网上,因为移动互联是未来发展的方向5、安卓的发展从下面三个方面分析Android的发展Android的开源应用:虽然Android平台推出才几年的时间,但是Android开源项目的发展却相当迅速Android从诞生以后就得到了非常快速的发展,充分证明了Android的开放性吸引了大量的开发人员加入Android的开发,开源平台顺应了移动互联网未来发展的趋势Android设备:与Android开源应用一样,Android设备在过去的几年中也有了长足的发展在HTC领军的Google Android初试牛刀后,越来越多的厂商启动了Android的计划,目前除了HTC率先推出Android外,摩托罗拉、三星电子及LG电子都相继推出了基于Android系统的,除了上述厂商外,部分尚未加入OHA的厂商,也正加快脚步开发Android,新产品推出时间反而更早例如,联想公司为中国移动打造的高度定制化的Android—Ophone,已经在国内市场亮相Android平台:Android平台从推出至今就在快速发展,平台版本不断更新。
目前最新版的Android已经提供了对输入法的支持,这意味着新的SDK已经支持中文随着开发平台新版本的不断推出,将会有越来越多的中文开发者加入到Android开发的行列二、具有代表性的Android1、HTC Dream—G12、HTC Hero—G33、Google Nexus One三、常用功能及软件体验四、常用网站及资料分享五、软件版本及刷机。