ブラウザー呼び出し機能を使用するには(ブラウザーから起動できるようにするには)、対象アプリケーションのアプリケーション記述ファイルに次の設定を含める必要があります。
<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 を指定することができます。