ブラウザー呼び出し機能を使用するには(ブラウザーから起動できるようにするには)、対象アプリケーションのアプリケーション記述ファイルに次の設定を含める必要があります。
<allowBrowserInvocation>true</allowBrowserInvocation>
アプリケーション記述ファイルについて詳しくは、AIR アプリケーション記述ファイルを参照してください。
ブラウザーの SWF ファイルでは、http://airdownload.adobe.com/air/browserapi/air.swf から読み込んだ air.swf ファイルで launchApplication() メソッドを呼び出して AIR アプリケーションを起動できます。詳しくは、air.swf ファイルの読み込みを参照してください。
air.swf ファイルが読み込まれると、SWF ファイルでは、次のコードに示すように、air.swf ファイルの launchApplication() メソッドを呼び出すことができます。
var appID:String = "com.example.air.myTestApplication";
var pubID:String = "02D88EEED35F84C264A183921344EEA353A629FD.1";
var arguments:Array = ["launchFromBrowser"]; // Optional
airSWF.launchApplication(appID, pubID, arguments);
launchApplication() メソッドは、air.swf ファイルのトップレベルで定義されます(ユーザーインターフェイス SWF ファイルのアプリケーションドメインに読み込まれます)。このメソッドを呼び出すと、AIR で指定されたアプリケーションが起動します(アプリケーションがインストール済みで、アプリケーション記述ファイルの allowBrowserInvocation 設定でブラウザー呼び出しが許可されている場合)。このメソッドのパラメーターは次のとおりです。
パラメーター
|
説明
|
appID
|
起動するアプリケーションのアプリケーション ID。詳しくは、idを参照してください。
|
pubID
|
起動するアプリケーションの発行者 ID。詳しくは、publisherIDを参照してください。対象のアプリケーションに発行者 ID がない場合は、pubID パラメーターを空のストリング("")に設定します。
|
arguments
|
アプリケーションに渡す引数の配列。アプリケーションの NativeApplication オブジェクトは、引数のプロパティがこの配列に設定されている BrowserInvokeEvent イベントを送出します。引数内で認識される文字は半角英数のみです。その他の値を渡す必要がある場合は、何らかのエンコード方式を使用してください。
|
launchApplication() メソッドは、マウスのクリックなどのユーザーイベントのイベントハンドラーで呼び出されたときにのみ動作できます。
launchApplication() メソッドでは、必要なバージョンの Flash Player(Windows および Mac OS ではバージョン 9 アップデート 3 以降、Linux ではバージョン 10)がブラウザーにインストールされていない場合、エラーがスローされます。
アプリケーション記述ファイルで allowBrowserInvocation エレメントが false に設定されている場合、launchApplication() メソッドを呼び出してもアプリケーションは起動されません。
アプリケーションを起動するためのユーザーインターフェイスを示す前に、air.swf ファイルで getApplicationVersion() メソッドを呼び出す必要があります。詳しくは、AIR アプリケーションがインストールされているかどうかの Web ページからの確認を参照してください。
ブラウザー呼び出し機能によりアプリケーションが呼び出されると、アプリケーションの NativeApplication オブジェクトは BrowserInvokeEvent オブジェクトを送出します。詳しくは、「ブラウザーからの AIR アプリケーションの呼び出し」(ActionScript 開発者用)または「ブラウザーからの AIR アプリケーションの呼び出し」(HTML 開発者用)を参照してください。
ブラウザー呼び出し機能を使用する場合は、セキュリティ上の影響を考慮してください。セキュリティ上の影響については、「ブラウザーからの AIR アプリケーションの呼び出し」(ActionScript 開発者用)および「ブラウザーからの AIR アプリケーションの呼び出し」(HTML 開発者用)で説明しています。
実行中のアプリケーションは、LocalConnection クラスを使用してブラウザーで SWF コンテンツと通信できます。詳しくは、「Flash Player および AIR の他のインスタンスとの通信」(ActionScript 開発者用)、または「Flash Player および AIR の他のインスタンスとの通信」(HTML 開発者用)を参照してください。
注意: AIR 1.5.3 では、発行者 ID の使用は推奨されません。発行者 ID はアプリケーションに自動的に割り当てられなくなりました。下位互換性を維持するため、アプリケーションでは引き続き発行者 ID を指定することができます。