Flex web应用调用Flex AIR桌面应用
1、Flex web应用安装AIR应用 2、Flex web应用运行AIR应用 3、Flex web应用与AIR之间参数传递 内容 1、Flex web应用安装AIR应用 首先,编写简单可测试的AIR应用,通过Flex builder打包成AIR桌面应用(AIR运行环境提前安装),打包前记得在*-app.xml文件中增加<allowBrowserInvocation>true</allowBrowserInvocation>,表示允许通过浏览器启用,同时记下该配置文件中<id>TestAIR</id>(后面运行时使用)。 然后,编写as代码: private var APP_URL : String = "http://localhost:8082/Test/TestAIR.air";??? private function init():void ????//air.swf也可以设置为http://airdownload.adobe.com/air/browserapi/air.swf,主要是在企业应用中,很多时候不直接与外网相连,用户很不喜欢,因此我将此文件放在服务器上以供加载。 private function onInit(e:Event):void? private function installApp(evt:MouseEvent):void{ ??????? //安装AIR应用代码 ????????air.installApplication(APP_URL,AIR_VERSION); 完成上面这些,便可以成功通过Flex web应用安装AIR应用了。 2、Flex web应用运行AIR应用 在完成1的前提下,才能继续进行。 首先,准备两个数据,APP_ID(AIR应用id)与PUB_ID(发布商标识),来源分别为上面提到的<id>TestAIR</id>与刚刚安装好的AIR桌面应用,在其安装目录META-INF/AIR 下有一publisherid文件,文件内容即为PUB_ID。 然后,编写as代码,将上面installApp方法代码修改如下: private var APP_ID : String = "TestAIR"; private function installApp(evt:MouseEvent):void{ ????????air.launchApplication(APP_ID,PUB_ID,null); 修改代码完成后,重新运行,不会再提示安装,可直接运行AIR应用。 3、Flex web应用与AIR之间参数传递 继1、2之后,修改installApp方法代码,此处为传递参数,代码如下: private function installApp(evt:MouseEvent):void{ ??????? var arguments:Array = ["china"];//传递参数 ????????air.launchApplication(APP_ID,arguments); 修改AIR应用代码,此处为接收参数,代码如下: private function init():void { private function onInvokeEvent(event:BrowserInvokeEvent):void{ 此处一定要监听BrowserInvokeEvent事件,只是InvokeEvent事件是不会接收到参数的。 重新打包AIR应用,运行便可见到参数传递、接收的效果。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |