AIR版とFlex版のちがい
このデモアプリケーションでは、AIRアプリケーション固有の機能はローカルファイルの読み書きとドラッグ&ドロップしかないため、わずかな修正のみでそのままFlex版としてコンパイルが可能です。
AIRアプリケーションでのみ使用可能なクラスは、言語リファレンスでクラス名にAIRのロゴが付いているため、簡単に見分けることができます。
なお、行番号は「ShareBoardAIR.mxml」のものを表示しています。比較の際に参考にしてください。
- ルートタグ(2,346行目)
- ドラッグ&ドロップ(89~119行目)
- ローカルファイルへ書き出し(259~273行目)
- ファイル書きだしボタン(308行目)
AIR版では<mx:WindowedApplication>
タグを使用するのに対し、Flex版では<mx:Application>タグになります。
NativeDragManagerクラスとNativeDragEventクラスを使用しています。Flex版ではこの部分は削除しています。
FileとFileStreamを使用しています。同じくFlex版では削除しています。
Flex版では関数を削除しているため、トリガとなるボタンも削除しています。
AIR版クライアントをビルド(Flex 3 SDK)
ここではFlex 3 SDKを使用してAIR版クライアントをビルドする手順を説明します。
ソースの配置
開発作業用フォルダを作成し、以下の6ファイルを配置してください。(※添付ファイル)(ここでは「C:\flex_src」をソースフォルダにしました。)
- ShareBoardAIR.mxml
- ShareBoardAIR-config.xml
- ShareBoardAIR-app.xml
- LoginWindow.mxml
- services-config.xml
- messaging-config.xml
AIR版クライアントのソース
AIR版クライアント用のコンパイル時オプション
AIR版クライアント用のパッケージ時オプション
ログイン用ポップアップ画面(AIR版クライアント内で使用される)
サービス設定
メッセージング設定(サービス設定ファイルにインクルードされる)
コンパイル
AIRアプリは「amxmlc」コマンドを使用してコンパイルします。コマンド実行後、同フォルダに「ShareBoardAIR.swf」が作成されていることを確認してください。
C:\flex_src>amxmlc ShareBoardAIR.mxml
起動確認
「adl」コマンド(AIR Debug Launcher)を使用して、起動確認をしてみましょう。引数として「ShareBoardAIR.mxml」ではなく「ShareBoardAIR-app.xml」を指定することに注意してください。
C:\flex_src>adl ShareBoardAIR-app.xml
証明書の作成
コンパイルしたAIR版クライアントを配布用にパッケージングするために、証明書が必要になります。ここでは広く配布することは想定していませんので、自己署名した証明書を作成します。作成には「adt」コマンドを使用します。(「newcertpassword」というパスワードを設定して、「newcert.p12」というファイル名で作成しています。)
C:\flex_src>adt -certificate -cn SelfSign 2048-RSA newcert.p12 newcertpassword
バージョン番号の更新
AIRアプリケーションのインストール時に使用されるバージョン番号を更新しましょう。更新の度合いにより、任意の番号に変更してください。
<version>0.1.0</version>
パッケージング
作成した証明書を使用して、パッケージングします。なお、パスワードの問い合わせでは先ほど設定した「newcertpassword」と入力してください。
C:\flex_src>adt -package -storetype pkcs12 -keystore newcert.p12 ShareBoardAIR.air ShareBoardAIR-app.xml ShareBoardAIR.swf password: newcertpassword
コマンド実行後、同フォルダに「ShareBoardAIR.air」が作成されます。
AIR版クライアントをビルド(Flex Builder 3)
ここではFlex Builder 3を使用してAIR版クライアントをビルドする手順を説明します。
プロジェクトの作成
以下の手順でプロジェクトを作成してください。
- メニューから「ファイル→新規→Flexプロジェクト」の順で選択してウィザードを開く
- プロジェクト名を入力し、以下の項目を選択し、次へ
- サーバ設定検証のためTomcatを起動
- 「ローカルのLiveCycleデータサービスサーバーにデフォルトの場所を使用」のチェックを外して以下の項目を入力し、「設定の検証」を押下
- 「WebルートフォルダとルートURLは有効です。」と表示されたことを確認して次へ
- ライブラリを読み込むため、ソースパスのタブを開き「フォルダの追加」でライブラリのパスを入力して終了(インストールした場所に合わせ「C:\flex_libs\corelib-.90\corelib\src」と入力します。)
アプリケーションの種類:デスクトップアプリケーション
アプリケーションサーバの選択:J2EE
「ファイル名を指定して実行」で「C:\blazeds_turnkey_3-0-0-544\tomcat\bin\startup.bat」を実行(停止は「C:\blazeds_turnkey_3-0-0-544\tomcat\bin\shutdown.bat」を実行)
ルートフォルダ:C:\blazeds_turnkey_3-0-0-544\tomcat\webapps\shareboard
ルートURL:http://localhost:8400/shareboard/
コンテキストルート:/shareboard
ソースの配置
プロジェクトのソースフォルダに、以下の4ファイルを配置してください。(※添付ファイル)(標準では「(マイドキュメント)\Flex Builder 3\ShareBoardAIR\src」になっているはずです。)
- ShareBoardAIR.mxml
- LoginWindow.mxml
- services-config.xml
- messaging-config.xml
AIR版クライアントのソース
ログイン用ポップアップ画面(AIR版クライアント内で使用される)
サービス設定
メッセージング設定(サービス設定ファイルにインクルードされる)
「services-config.xml」の場所を設定
デフォルトだとTomcat以下のファイルを読み込むようになっているため、配置したファイルを読み込むように変更します。
- メニューから「ファイル→プロパティ」の順で選択してプロパティを開く
- ツリーからFlexコンパイラを選択
- 追加コンパイラ引数にあるパスを変更して適用またはOK
「C:\blazeds_turnkey_3-0-0-544\tomcat\webapps\shareboard\WEB-INF\flex\services-config.xml」
→「(マイドキュメント)\Flex Builder 3\ShareBoardAIR\src\services-config.xml」
起動確認
メニューから「実行→ShareBoardAIRの実行」を選択して実行してください。
バージョン番号の更新
AIRアプリケーションのインストール時に使用されるバージョン番号を更新しましょう。更新の度合いにより、任意の番号に変更してください。
<version>0.1.0</version>
パッケージング
以下の手順でAIR版クライアントを配布用にパッケージングしてください。
- メニューから「プロジェクト→リリースビルドの書き出し」の順で選択してウィザードを開く
- 必要な項目はすでにセットされているので、確認して次へ
- 「AIRファイルを書き出してデジタル証明書で署名」の「作成」を押下して証明書作成ウィンドウを開く
- 以下の項目を入力し、OKで作成
- 作成された証明書とパスワードが入力されていることを確認して終了
発行者名:任意
パスワード:任意
確認パスワード:任意
別名で保存(ファイル名):任意
以上でプロジェクトのフォルダに「ShareBoardAIR.air」が作成されます。