技术开发 频道

AIR 1.5开发系列教程:技术概述

  【IT168 专稿】Adobe AIR(Adobe Integrated Runtime)是一种革命性的跨操作系统的平台,其极大拓宽了创建桌面应用程序的途径。AIR与富互联网应用程序(Rich Internet Application,缩写为RIA)具有密切的联系。本文首先从RIA概念入手,然后对AIR技术的基础知识进行讲解。

  第二篇:使用Flex技术创建第一个AIR应用程序

  正如“AIR”一词的中文含义一样,下面就开始精彩的AIR飞行之旅吧。

  1.  什么是RIA

  随着互联网的迅速发展,越来越多的用户不满足于仅仅是看看网页,听听音乐等简单应用,这些用户要求通过浏览器完成功能更强,界面更赏心悦目的高级交互。然而,由于技术发展的制约等多种原因,这种需求还很难得以满足。为了提高用户体验,实现更为复杂的功能和人机交互,出现了一种新的互联网应用程序,这就是富互联网应用程序(Rich Internet Application,缩写为RIA)。那么究竟什么是RIA呢?

  RIA的概念由Macromedia公司(已被Adobe公司收购)于2002年3月首先提出,它是一种运行于浏览器中的网络应用程序,其突出优势在于能够将桌面应用程序具有的丰富用户交互体验,与传统Web应用的易于传播部署的灵活性结合起来,目的在于较高提升用户的体验,彻底革新人与互联网之间的交互关系。

  从互联网发展的角度来看,RIA是水到渠成的结果。下图1显示了RIA在互联网发展过程中所处的位置。




  如图1所示,应用程序经过从本地向大范围直至全球,从文字界面向丰富直至综合媒体图形用户界面的方向发展着。显而易见的是,发展的总体方向是构建遍及全球的具备综合媒体图形用户界面的RIA。相信随着软硬件技术的迅猛发展,特别是全球各大企业组织认识到RIA可产生显著的商业利润、提高生产率及降低成本的优势后,RIA的发展势头会越来越猛烈,而这些结果的核心原因是,RIA能够最大程度的提高广泛性和丰富性。由此可见,02年Macroedia公司引入RIA是大势所趋,即使它不提出,也会有公司做这件事情。

  从技术的角度来看,RIA是极具革命性的概念,它是桌面应用程序与Web应用程序的完美结合。简单而言,RIA所具有的桌面应用程序的特点包括:在消息确认和格式编排方面提供互动用户界面;在无刷新页面之下提供快捷的界面响应时间;提供通用的用户界面特性如拖放式及在线和离线操作能力。RIA所具有的Web应用程序的特点包括:用户友好性和丰富的交互性;跨平台兼容性;一次加载,多次使用的特性;客户端数据缓存功能;高效的网络数据信息传输;多个应用同时工作;快速的开发和部署;高度的个性化可配置性;具有通信包括实时互动的声音和图像的特点,充分利用被广泛采纳的互联网标准。

  以上内容是帮助读者从外部了解RIA,下面从内部机理,即应用程序模型的角度介绍RIA。如图2显示了RIA的应用程序模型。



图2  RIA应用程序模型


  如图2所示,RIA应用程序模型由五个层组成,由底至上包括:资源层、集成层、业务层、表示层和客户层。资源层中包含数据库,外部系统和传统资源。集成层实现连接到数据和传统系统。业务层实现和连接业务对象。表示层包括ASP、JSP、Servlets、Flex和其他UI元素。以上四层比较常见,且都很容易理解,在此不做羸述。此处,重点说明一下客户层。

  RIA中的客户层主体是富客户端,它能够提供可承载已编译客户端应用程序(以文件形式,用HTTP传递)的运行环境。客户端应用程序使用异步客户/服务器架构连接现有的后端应用服务器,这是一种安全、可升级、具有良好适应性的新的面向服务模型,这种模型由所使用的Web服务所驱动。

  通过以上内容的讲解,相信读者也能够总结出一些RIA的优点:一、RIA具有更加丰富的用户界面,其在不重载页面的情况下,也可提供更多迷人的用户体验。二、RIA可向用户提供由用户事件触发的实时反馈和验证。三、RIA可实现与传统桌面应用程序一致的观感。四、RIA能够包括完整的多媒体体验,如音频和视频。五、RIA具有很多功能,例如实时聊天和远程协作。这些优势是传统Web应用程序难以企及的。

  虽然RIA具有很多优点,受到很多人的青睐,但是事物的发展总是需要一个过程。目前,距离大规模开发应用RIA尚需时日。然而,近年来RIA在企业中的得到了一些应用,例如,构建企业资源计划ERP,客户关系管理系统CRM等等。对于企业而言,部署RIA的好处在于,RIA可以继续使用现有的应用程序模型(包括J2EE和.NET),因而无需大规模替换现有Web应用程序。

  通过富客户端技术,可以轻松构建更为直观、易于使用、反应更迅速,并且可以脱机使用的应用程序。同时,RIA还可以帮助企业提供多元化的重要业务效益,包括产提高销量、提高品牌忠诚度、延长网站逗留时间、较频繁的重复访问、减少带宽成本、减少支持求助以及增强客户关系等。
 
  AIR基本概念

  正如前文所述,RIA的确具有非常耀眼的光芒,它是未来互联网应用发展的主流方向。这种发展方向既是用户的强烈需求,也是各个技术巨头争相努力的目标。对于开发人员和技术爱好者而言,把握这种方向就是把握未来,就能够不被时代所抛弃,从而与互联网共前进共发展。

  RIA与AIR之间具有极为密切的联系,但是也有些差别。通常的RIA应用程序使用Flex,Silverlight等技术构建,其运行于IE等浏览器中。AIR应用程序被称为“RIA桌面应用程序”。简单而言,这个名称意味着两个重点:一、AIR应用程序具备RIA应用程序的众多特征和功能;二、AIR应用程序与Word、Adobe Reader等一样,是一种部署于桌面运行的应用程序,并且在AIR运行时环境的支持下,具备强大的跨操作系统的重要特性。下面重点从功能、跨平台特性和开发技术方面对AIR进行讲解。

  丰富功能
  AIR应用程序能够实现多种丰富功能。例如,访问用户计算机中的目录和文件、集成客户端数据库、以加密格式安全的保存数据、保存自定义窗口和菜单设置、与站点和服务器等网络资源交互、播放音频和视频、显示PDF文件等。

  跨平台特性
  由于AIR是应用程序运行时环境,因此它很小且对用户来说不可见。运行时环境提供了一套一致的跨操作系统平台和框架来开发和部署应用程序,因此开发人员创建的AIR程序不必到每种操作系统中上进行测试,而只要在一个平台上开发完成,就可以在其他系统中运行。这样的好处在于节省为多种操作系统构建应用程序的时间,提高工作效率。

  开发技术
  通常而言,常见桌面应用程序(例如Word,Adobe Reader)使用C、C++等语言编写,而AIR应用程序却能够使用现有的多数Web开发技术实现开发。正是由于多种Web开发技术的介入,使得AIR应用程序与互联网建立极为密切的联系。AIR应用程序的开发支持多种现有的Web开发技术。开发人员只要选择自己最为熟悉的技术,就能够开发最具用户体验的AIR应用程序。图3显示了AIR所支持的开发技术:



图3  AIR应用程序支持的开发技术


  由图3可知,这些技术包括:
? Flash/Flex(ActionScript/MXML);
? HTML/JavaScript/CSS/AJAX;
? 以上技术的组合;
? 可为任何应用程序使用的PDF;
  众多Web开发技术对于AIR开发的支持,使得开发人员不必另外去学习桌面程序开发技术,或复杂的底层代码,也不用访问处理每种操作系统的底层API,这比起如C和C++等语言而言,更容易学习和上手。
 
  安装AIR的软硬件要求

  前段时间,Adobe公司发布了最新的AIR 1.5版本。该版本支持业界几乎所有主流操作操作系统,例如Windows、Mac OS X、Linux等。下面首先简单了解一些安装AIR的软硬件需求:

  Windows操作系统
  • Intel Pentium III 1GHz或更快的处理器;
  • 带有Service Pack 2的 Windows XP;Windows XP Tablet PC Edition;或Windows Vista Home Premium、Business、Ultimate或Enterprise(包括64位版本);带有Service Pack 4的Microsoft Windows 2000;Windows 2003 Server;
  • 512MB的RAM;

  Mac OS X操作系统
  • Intel Core Duo 1.83GHz或更快的处理器;PowerPC G4 1GHz或更快的处理器;
  • Mac OS X10.4.11或Mac OS X10.5.2;
  • 512MB的RAM;

  另外,如果Adobe AIR应用程序具有全屏视频播放功能,那么会对软硬件提出更高的要求。建议使用下列硬件配置:
  Windows操作系统
  • Intel Pentium 2GHz或更快的处理器;
  • 带有Service Pack 4的Windows 2000;带有Service Pack 2的Windows XP;或Windows Vista Home Premium、Business、Ultimate或Enterprise;
  • 512MB内存;32MB显存;

  Mac OS X操作系统
  • PowerPC G4 1.8GHz或更快的处理器或Intel Core Duo 1.33GHz或更快的处理器;
  • Mac OS X版本10.4.9或更高版本或者版本10.5.1(Intel或PowerPC;H.264视频所需的Intel处理器);
  • 512MB内存;32MB显存;

  Linux操作系统
  • Intel Pentium III 1GHz或更快的处理器,512MB内存;
  • Pentium 4 2GHz或更快,1GB内存;
  • Fedora 8、Ubuntu 7.10、openSUSE 10.3以上

  实际上,就目前的硬件发展水平而言,多数用户计算机的软硬件基本都能够达到或超过AIR 1.5的系统需求。另外,AIR 1.5技术具有很强的国际化特征,其支持多种语言,例如繁体中文、简体中文、英语、法语、德语、意大利语、日语、朝鲜语、葡萄牙语、俄语和西班牙语等。这对于AIR的普及和发展奠定了良好的基础。

  4.  下载和安装AIR和AIR SDK

  运行AIR应用程序必须安装AIR运行时环境。获取Adobe AIR的最新版本时,建议读者去Adobe公司的官方网站下载。地址为:http://get.adobe.com/cn/air/。需要注意的是,下载页面中已经提供了对操作系统和AIR版本(目前最新是1.5)的选择项,读者应根据自身具体情况进行正确的选择。至于具体安装过程,由于很简单,在此不再羸述。

  Adobe AIR 1.5 SDK提供了生成和部署AIR应用程序的必要工具。下载AIR 1.5 SDK的地址是:http://www.adobe.com/products/air/tools/sdk/。另外,对于不同的操作系统,Adobe官方网站提供了不同的SDK,开发人员可据需下载。

  通常而言,开发人员下载的AIR SDK是一个压缩包AdobeAIRSDK.zip,在解压之后将获得一个名为AdobeAIRSDK包含众多文件的文件夹。下面假设该文件夹位于C盘根目录下。如图4显示了AdobeAIRSDK文件夹的内容。



图4  AdobeAIRSDK文件夹


  AdobeAIRSDK文件夹中主要包括以下内容:
  • 包含AIR API的框架,其位于frameworks文件夹中。
  • 模板,其位于templates文件夹中,主要包括两个用于定义AIR应用程序描述文件的XML模式定义文件,以及应用程序描述文件的模板。
  • 命令行调试加载器ADL(AIR Debug Launcher),该工具是位于bin文件夹中的adl.exe。ADL能够帮助开发人员在不对程序打包和安装的情况下,测试AIR应用程序。
• 命令行开发工具ADT(AIR Developer Tool),该工具是位于bin文件夹中的adt.bat。ADT能够将应用程序打包为.air文件,以便进行分发。
  • lib文件夹中包括adt.jar,这是ADT的可执行文件。
  • runtimes文件夹中包括AIR运行时。在AIR应用程序打包或者安装之前,ADL会使用AIR运行时加载AIR应用程序。
  • samples文件夹中包括示例应用程序的描述文件。

  为了使用Adobe SDK提供的开发调试工具,开发人员必须在Windows Vista系统中修改环境变量设置。首先,单击“计算机”>“属性”>“高级系统设置”,此时将显示如图5所示系统属性窗口。


图5  系统属性窗口


  单击“高级”选项卡中的“环境变量(N)…”按钮,以便修改编辑环境变量。如图6所示:



图6  环境变量窗口


  单击选中图6所示窗口中“用户变量”列表的“TEMP”变量,此时在下方的“系统变量”列表中会显示多个变量和对应值。查找其中的“Path”变量,并单击“编辑(I)…”按钮,会显示如图7所示的对话框:



图7  编辑系统变量对话框


  按照图7所示为变量Path修改变量值,即在变量值尾部添加Adobe SDK中bin文件夹的路径:“C:\AdobeAIRSDK\bin”。

  为了检测是否已将Adobe SDK安装成功,开发人员可在Windows开始菜单中单击“运行”,并输入命令cmd,以打开命令提示符窗口。在该窗口中输入以下命令,并回车:

adl –help

  以上命令要求显示bin文件夹中adl.exe文件的帮助内容。如图8显示了执行结果:



图8  执行命令


  通过以上过程,就完成了对AIR SDK的安装任务。实际上,除了AIR SDK中提供的工具之外,业界还有众多支持AIR技术的集成开发工具,主要包括:Adobe AIR extension for Dreamweaver CS4、Adobe AIR update for Flash CS4 Professional、Flex Builder 3。这些集成开发工具可帮助开发人员更加高效的创建AIR应用程序。

5.  小结

  本文对RIA和AIR的基本概念进行了讲解。实际上,目前许多大型公司都对AIR技术非常感兴趣,例如eBay、AOL、Nicklodeon、NASDAQ、FexEx等,它们都相继推出了丰富的AIR应用。这为AIR的发展注入了巨大的活力。有兴趣的读者可查找下载有关AIR应用程序,充分感受一些AIR的魅力。

  在以后的文章中,将详细介绍使用Flex技术创建AIR应用程序的方法。
 

0
相关文章