ActionScript
Adobe AIR Update Framework は AIR アプリケーションをネットワークアップデートするためのフレームワーク。
Adobe Labs にて現状では Flex と JavaScript 向けは公開されているが、
Flash IDE での使用できないとのこと。方法があるならフォーラムで偉い人が教えてくれるかも。
- Adobe AIR Update Framework
- http://labs.adobe.com/wiki/index.php/Adobe_AIR_Update_Framework
- Labs Forums : Adobe AIR Update Framework
- http://www.adobe.com/cfusion/webforums/forum/categories.cfm?catid=670&flcache=5966700
AIR アプリケーションにネットワークアップデートを実装するには、
flash.desktop パッケージの Updater クラスを使う。
そしてこれにはサーバーにバージョンを管理するファイルまたはデータベースなどが必要になる。
ここではversion.txt (内容は1.0という文字のみ)というファイルを使っての方法を紹介。(必要要素を抜粋)
Flashで ServiceMonitor などのネットワークモニタを使用する場合、
コンポーネント AIR ServiceMonitor の ServiceMonitorShim をステージに配置、またはライブラリに含めておく。
ServiceMonitorShim がないとエラーが出る。
AIR アプリケーションとファイルの関連付けをを行うためには、アプリケーション記述ファイルに <filetypes> タグを追加するか、以下の順で Flash CS3 側で設定。
- [コマンド] メニューから [AIR - アプリケーションとインストーラーの設定] ウィンドウを開く。
- [詳細 : 設定]ボタンをクリック。
- [関連ファイルの形式] 項目の [+] ボタンをクリック。
- 名前、拡張子(、説明、コンテンツの種類、アイコン)を設定。
※名前と拡張子は必須 - InvokeEvent をイベントリスナーに登録。
リファレンスにある通り、NativeApplication から送出されるイベントなので、NativeApplication に登録。他のオブジェクトに登録しても受け取れない。
NativeApplication.nativeApplication.addEventListener(InvokeEvent.INVOKE,invokeHandler);
後はAIR アプリケーションに関連付けたいファイルを OS 側で設定。
これで関連づけたファイルをダブルクリックするとAIR アプリケーションで開けるようになる。
AIR アプリケーションのネイティブメニューで、Macintoshにはデフォルトのメニューが存在する。そのデフォルトのネイティブメニューを操作する方法。
元の NativeMenu を menu とした場合、NativeMenuItem は
- [アプリケーション名]
- menu.getItemAt(0)
- [ファイル]
- menu.getItemAt(1)
- [編集]
- menu.getItemAt(2)
- [ウィンドウ]
- menu.getItemAt(3)
