PR

 Flash Builderというと,Flashのコンテンツ作成専用の開発環境のように思われるかもしれませんが,Flash Player上で動作するWebアプリケーションだけでなく,デスクトップで動作するリッチインターネットアプリケーションであるAIRアプリを作成することもできます。

 Flash BuilderはFlex環境で動作するアプリを作成するFlex Builderが発展したものです。Flex Builder3→Flash Builder4→Flash Builder4.5とバージョンアップし,最新バージョンではモバイル用のアプリが開発できるようになりました。iOSやBlackBerry端末にも対応予定なのですが,現時点ではAndroid用アプリを開発できます。

 AIR2.6をサポートするAndroid端末で作成したアプリを実行できます。ですから,Android2.2(Froyo)以降の実機があれば実際に動作できます。また、実機がなくてもシミュレータ上で,動かしてみることが可能です。

 今回はFlexモバイルプロジェクトの作成から説明を始め,ユーザーインタフェースの作成における標準のEclipse開発環境に対するアドバンテージを示したいと思います。

 Flash Builderは有償の統合開発環境(IDE)ですが,Eclipseをベースに作成されていますので,Eclipseの経験者なら,迷いなく開発を進められるでしょう。また,逆にEclipseの経験がない人にとっても,各種言語に対応する汎用的なEclipseが,かなり専用的になっているイメージなので,Eclipseより覚えやすく感じられるでしょう。

 それでは,プロジェクトを作ってみましょう。

 ファイル(F)→新規(N)で,Flexモバイルプロジェクトを作成します。この画面ではプロジェクト名を入力します。

 モバイル設定の画面に進みます。アプリケーションテンプレートとして,空白,ビューベースアプリケーションとタブ付きアプリケーションを選択できます。最近,Androidアプリではタブ付きのレイアウトを使うことが多いので,タブ付きアプリケーションを選んでみます。

ここでタブページを追加できます。タブ:の下に名前を入力して,追加(A)ボタンをクリックすると追加されます。

 また,権限のタブを開くと,いわゆるパーミッションの設定ができます。ここに表示される権限の一覧を見ると,FlexモバイルAIRプロジェクトで何ができるかが,推測できます。

 INTERNETにはすでにチェック付いているので,使えるのだろう,WRITE_EXTERNAL_STORAGEをチェックすると外部記憶(SDカード)に書き込めるのだろう。また,ACCESS_FINE_LOCATIONにチェックできるので,GPSが使えることもわかります。CAMERA機能やRECORED_AUDIOにチェックを付ければ,音声を録音するアプリも作成できそうです。逆に権限に表示されていないのは,加速度センサーや近接センサーをはじめとするセンサー類です。加速度センサーを使ったゲームの作成は現時点では無理そうです。 権限タブはこのままで次に進みましょう。

 次はサーバー設定です。アプリケーションサーバーの種類として,ASP.NETやColdFusion,JavaやPHPが選択できます。サーバー連携が得意な開発環境なのだろうと予想されます。

 パッケージエクスプローラービューを見ると,src/(default package)にAndroiTest.mxml(プロジェクト名.mxml)が作成されています。このファイルがプロジェクトのデフォルトのアプリケーションファイルです。

 src/viewsフォルダには,先ほど入力したタブ名(tab1,tab2,tab3)+View.mxmlファイルが作成されています。

 各タブビューに,コンポーネントビューからコンポーネントをグラフィカルに貼り付けていくことで,アプリのユーザーインタフェース(UI)を作成して行くことができます。

 Labelと一行の文字入力用のTextInput,複数行入力用のTextArea,そしてボタンを配置したところです。操作は,当然ですが,AIRアプリを作成するのと同様で,通常のAndroidアプリのUIを構築するときのように,LinearLayoutやRelativeLayoutなどについて考える必要はありません。

 コンポーネントはX,Y座標から,幅,高さで配置されます。

 アウトラインビューで,タブビューに配置したコンポーネントを一覧表示することができます。

 EclipseでAndroidアプリのユーザーインタフェースを作成するときにも,グラフィカルな操作ができないわけではありませんが,Flash Builder4.5だと,より単純に直感的にUIを構築することができるように感じます。
                  つづく