Adobe AIRに手を出した

ブログもOCamlもほったらかし(一応「プログラミング in OCaml ~関数型プログラミングの基礎からGUI構築まで~」は最後まで読んだ)のままだったけど,最近はAdobe AIRに手を出した。
AIRAdobe Integrated Runtime の略で,RIA(Rich Internet Application)をデスクトップアプリとして実行する環境。しかもクロスプラットフォームAIRアプリの開発手法には3つあって:

のどれでも開発が出来る。FlashFlex がどう違うのかいまいちわかんないんだけど,要するに Webアプリの開発手法をそのまま使えるってことらしい。

で,とりあえず見よう見まねで Hello world じゃなくて Hello AIRFlex ベースで作ってみた。

HelloAIR.mxml

 <?xml version="1.0" encoding="utf-8"?>
 <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
                         layout="absolute"
                         title="Hello AIR">
 
   <mx:Script>
     <![CDATA[
       private function hello():void {
         myLabel.text = "Hello AIR!";
       }
     ]]>
   </mx:Script>
 
   <mx:Label id="myLabel" horizontalCenter="0" verticalCenter="0"/>
   <mx:Button id="myButton" label="click" horizontalCenter="0" verticalCenter="20" c lick="hello();"/>
 
 </mx:WindowedApplication>

HelloAIR-app.xml

 <?xml version="1.0" encoding="utf-8"?>
 <application xmlns="http://ns.adobe.com/air/application/1.1" minimumPatchLevel="0"> 
   <id>com.websysd.flex.HelloAIR</id>
   <version>1.1</version>
   <filename>HelloAIR</filename>
   <initialWindow>
     <content>HelloAIR.swf</content>
     <systemChrome>none</systemChrome>
     <visible>true</visible>
     <width>400</width>
     <height>200</height>
   </initialWindow>

必要なファイルは:

  • ソースファイル(HelloAIR.mxml
  • アプリケーション記述ファイル(HelloAIR-app.xml

の2つ,というか2種類。
ソースを記述する言語にも2つあって,1つは画面構成を記述する MXML,もう1つは動作を記述する ActionScript。HTML と JavaScript の関係と同じだと思えばいい。
アプリケーション記述ファイルには,ウィンドウの大きさとかインストール先とかを書く。アプリの名前に -app をつけたのをファイル名にするのが普通らしい。


コンパイルには amxmlc コマンドを使う。

 ^o^ >amxmlc HelloAIR.mxml
 設定ファイル "C:\usr\Flex3SDK\frameworks\air-config.xml" をロードしています
 D:\Documents\24711\My Documents\work\AIR\HelloAIR\HelloAIR.swf (255199 bytes)

これで,HelloAIR.swf ファイルが出来る。
開発中はインストールしなくても実行できるように,adl コマンドがある。adl コマンドにはアプリケーション記述ファイルを引数として与える。

 ^o^ >adl HelloAIR-app.xml


実行画面(ボタンを押して,メッセージが表示されたところ)


本も買った。

AIRプログラミング入門1.1日本語版対応

AIRプログラミング入門1.1日本語版対応