Adobe AIR和FLEX有什么区别?
答案 0 :(得分:32)
“Flex Framework”是用于开发RIA的AS3类和组件的集合。
“Flex Builder”是用于开发“Flex应用程序”的IDE。
同样,HTML是用于开发网页的标签集合,而Dreamweaver是用于开发网页的IDE。但是,您不需要Dreamweaver,也可以使用记事本,BBEdit等。
如果您使用Flex Builder之外的其他内容在Flex中进行开发,则需要下载Flex SDK进行编译。已编译的Flex应用程序的最终结果是SWF文件(与Flash相同)。
使用已编译的SWF文件,用户只需安装Flash Player即可运行该应用程序。
开发大多数Flex应用程序,将其部署到服务器,然后使用Web浏览器向用户提供应用程序以供使用。
我还没有使用过AIR,所以我不知道兼容的AIR应用程序的最终产品是什么,但AIR是Flex应用程序的另一种交付系统,可以替代Web服务器和浏览器。它的主要目的是将RIA部署到用户的桌面,独立于互联网连接。
AIR,也允许使用HTML,AJAX等。因此AIR应用程序可以是所有这些东西的集合,一起编译。
要运行AIR应用程序,您需要在计算机上安装AIR Runtime。
答案 1 :(得分:17)
AIR不是Flex的超集。
Adobe AIR本质上是Webkit,Flash,Javascript,Flex,XHTML,CSS,sqlLite。
空气应用主要是在ECMA中开发的。 (由ActionScript / JavaScript)的。目前世界上大多数AIR应用程序都包含Javascript,xhtml,images和sqllite。
已为AIR扩展了Actionscript引擎,以支持磁盘IO和其他“本地”系统功能。这允许您的应用程序像普通系统应用程序一样运行。虽然大多数人将他们的数据存储在sqlLite中,但很少写入磁盘以获取除日志之外的任何内容。 (从我注意到/读到的)
无论如何,AIR或AIR社区中都没有大量的Flex。从我注意到很多Javascript / Flash / XHTML人员制作通过AIR运行时在多操作系统上运行的小应用程序。
答案 2 :(得分:8)
我会加入Garry(优秀!)的答案,说这取决于你的要求。存在概念上的差异和具体差异。 Garry的回答详细介绍了一些具体细节。
但从概念上讲,AIR是Flex的超集,Flex是Flash的超集。
Flash创作的SWF通常(虽然并非总是 - 但大部分时间)在Web浏览器中运行,并由ActionScript代码组成。 Flex创作的SWF也可以在Web浏览器中运行(或者也可以是一些类似的容器)并且由ActionScript代码组成,但通常也会利用Flex框架,它本质上是Adobe提供的一堆ActionScript类,可以帮助开发人员在构建更多功能丰富的基于Flash的应用程序。最后,AIR是在桌面上运行的Flex - 它是Flash-plus-Flex,还有一些额外的面向桌面的工具,允许在Flash或Flex中创作的SWF作为桌面应用程序安装和运行。
答案 3 :(得分:4)
优秀的帖子。作为旁注,我想补充一点,与Flex / Flash SWF不同,AIR SWF不能,而且我重复一遍,无法在浏览器中播放。 AIR SWF需要自己的小沙箱运行(运行时提供)。
答案 4 :(得分:3)
有两个运行时Flash平台,一个是Flash Player和其他Adobe AIR(Adobe Integrated Runtime)。 Adobe Flash Player是一个高度表达的跨平台运行时,适用于所有具有Flay Player插件的浏览器。 Flash Player提供在浏览器中运行的SWF文件,而AIR提供在浏览器外部的桌面上运行的.air独立应用程序。 您可以找到有关AIR&的更多详细信息。来自此处的Flash:http://readymadeflash.com/blogs/what-is-the-difference-between-adobe-AIR-and-flash.html
答案 5 :(得分:2)
我的印象是移动flex到空气很简单=> http://forums.adobe.com/message/2887004
我的理解是,理论上你的应用程序应该只需要一个真正的改变。 当然,现在我必须测试这个理论...
如果我可以保留flex的所有功能,然后获得HTML控件和更新框架,那么我会非常兴奋,因为所有flex都真的缺少全部功能。
关闭实验。
答案 6 :(得分:2)
要了解Flex和Air,您需要了解整个Adobe Flash Platform。 Flash被重载意味着很多东西,Flash平台,运行时,运行时API和IDE。
Adobe Flash Platform - 包含所有其他内容的广义术语
运行时:
Adobe Flash Player - 您在网络浏览器上安装的插件,支持Flash API
Adobe Air Runtime - 您安装的另一个插件作为桌面应用程序运行,支持Air API(Flash API的超集)
API:
ActionScript - 后端使用Flash API or Air API,您可以选择编译应用程序的API,它将在相应的运行时运行。 AS适用于Flash UI或Flex UI
UI - Flash component(专有fla格式)或Flex Framework(基于XML)
IDE:
Adobe Flash Pro(CS4 / 5/6 / CC) - 与Flash项目合作
Flash Builder - 使用Flex项目
答案 7 :(得分:1)
Flex是一个框架,用于在Flash播放器上呈现内容,主要用于企业应用程序。 AIR是一个运行时,它将flex,flash和/或html包装在一个包中,可以在不使用浏览器的情况下在桌面上访问,这样用户就可以获得桌面(比如访问目录,与系统chrome交互等等......) )除了给用户提供网络感觉(访问http请求,呈现HTML,调用Web服务等...)。
答案 8 :(得分:0)
这是一个很好的比较线程!我刚为几个博物馆安装建立了一系列AIR应用程序。 AIR应用就是这样......独立,编译和优化的应用程序,包含在它自己的安装程序中。它是一个相当多功能的包装器,如果你正确地玩你的卡,它将编译一堆代码。您实际上可以构建一个网站,然后将其全部压缩到桌面应用程序中。因为它在本地运行,所以它还能够绕过Flash的安全协议(我不确定Flex能够做什么)。这使您可以在无缝链接应用程序,显示,输入/输出等时访问完整的不同级别的功能。
因此,您可以在AIR应用程序中包装FLEX构建... Adobes AIR开发中心将所有内容彻底打破,并确保通读adobe livedocs!
http://www.adobe.com/devnet/air.html
http://livedocs.adobe.com/flex/3/html/help.html?content=Part5_AIR_1.html