所以我创建了一个保存为自定义文件类型的 Air 应用程序。我在发布应用程序时设置了文件关联,当您双击文件时,它会打开 air 应用程序。检测应用程序是否已通过文件打开的钩子(Hook)是什么?显然,我需要检测到这一点,然后让应用程序打开文件本身。

最佳答案

InvokeEvent 将保存到 arguments 属性中请求的文件名:

快速 mxml 示例:

<?xml version="1.0"?>
<mx:WindowedApplication
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:s="spark.components.*"
    invoke="onAppInvoke(event);">
    <mx:Script><![CDATA[
      import mx.controls.Alert;

      private function onAppInvoke(event:InvokeEvent):void {
        if (event.arguments.length>0) {
           // ok app call with an arguments
           var fileName:String=event.arguments[0];
           Alert.show("app open with : "+fileName);
        } else {
           // app open normally
           Alert.show("normal launch");
        }
      }
     ]]></mx:Script>
</mx:WindowedApplication>

关于apache-flex - Adobe Air - 使用 Air 打开文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3634278/

10-12 05:43