アーカイブ : 2010年 9月

airforandroidの開発方法について

※この記事は手探りで書いたので誤りがあるかもしれません。誤りを発見した場合指摘頂けると幸いです。

初心者向けのairforandroidの開発環境でおすすめはFlashCS5です。
自由度やもっとテクニカルな面を追求したい場合はFlashDevelopなどがおすすめです。
開発にあたってまず準備が必要になると思いますが、以下のような手順で環境を揃えていきます。

※WindowXPを元に書きましたのでMacの場合は適宜必要箇所変更お願いします。

1、開発環境に関係なく共通で必要なものをそろえます。

  • airforandroid SDK(ダウンロード,ドライブ直下などに展開する)
  • p12証明書

2、各開発環境における設定をおこないます。

3、パッケージしたapkファイルを端末やエミュレータにインストールします。

<各開発環境における設定>

FlashCS5で開発する場合(オススメ)

まずAIRforAndroid_FlashCS5.zxpをダウンロードします。

↑をダブルクリックしてインストールします。

FlashCS5を立ち上げます。

テンプレートの中にAIR for Androidが追加されていますのでこれをクリック。

適当に新規ファイル作成して、プロパティの中のAIR Android 設定右横の「編集」ボタンを押します。

※上の画面はβ版なので正式リリース後は日本語化されているかもしれません。

↑の画面に上から証明書へのパスとandroidSDKのadb.exeへのパスを記述します。

以上で終了です。

FlashDevelopで開発する場合

詳細な記事を書きましたのでこちらを参考ください。

Flash Builderで開発する場合

新規のflexProjectを作成します。

新規プロジェクトの設定画面でアプリケーションの種類をデスクトップに設定して、SDKのバージョンを「特定のSDKを使用する」にチェックをいれます。

右端にある「Flex SDKの設定」リンクをクリックします。

設定リンクを開くとSDKを指定するダイアログが表示されるのでandroid出力に使うFlex4とairforandroidをマージしたSDKをここで追加します。

画面右の「追加」ボタンを押してマージしたSDKの位置を参照します。SDKにわかり易い名前を入れて「OK」ボタンを押します。

上記画面を閉じるとひとつ前の画面(新規Flexプロジェクト)で特定のSDKを使用するの右のプルダウンに先程追加したSDKが指定されていることを確認します。

コンパイルされたswfファイルとxmlをPackageAssitantProでパッケージしてapkファイルを作成してインストールします。

以上で完了です。

airforandroidの新機能

android2.2から実装されるairforandroidの新機能

これに実装される主な機能一覧↓

  1. マルチタッチ
  2. 重力センサー
  3. GPS
  4. スクリーンオリエンテーション(画面の縦横検知)
  5. バーチャルキーボードのサポート(TextFieldをクリックすると端末上のソフトウェアキーボードを利用できる)
  6. カメラ機能(デバイス搭載のカメラにアクセス)
  7. ハードウェアアクセラレータ(GPU利用による処理の高速化)
  8. マイクロフォンサポート
  9. CAMERA UI (デバイス上のカメラで取った写真やビデオを受ける)
  10. CameraRoll(デバイス内のカメラで取った写真にアクセス)
  11. StageWebView(Airの中にブラウザ設置)

この他にも細かいものがいくつかあります。

雑感:

この記事を書いている段階ではairforandroidはまだβなのでなんとも言えませんが、今までWEBサイトを開発していたFlashクリエイターにとって開発の敷居は低い反面、PCとデバイスの性能を比較した場合まだ性能面では著しく低いのでメモリ管理や処理の負荷についてシビアにつきつめていかないとアプリケーションとしての体をなさないような気がします。

また、FlashはUIを自由にカスタマイズできますが自由すぎるUIがユーザーにとってはデメリットになってくるケースも考慮する必要があると思います。この部分についてはアプリケーションフレームワーク「Hero」が開発されています。モバイルデバイスにとってUIはPCよりもさらに重要なファクターなので、これからモバイルアプリケーションを開発する人にとってHeroのリリースも楽しみです。

個人的にairforandroidの強みは開発速度とマルチデバイスの二つだと思います。アプリケーションという位置づけであればjavaで組んだほうが自由度が高く良いものが上がりますが、コンテンツを全デバイス(android,iphone,window7phone)向けに最短で配信するといったものであればairforandroidに軍配があがるのではないでしょうか。例えば来週発売の雑誌付録をおまけアプリケーションとして配信するとか?そういったベクトルでのポテンシャルは大きく秘めているので、期待が膨らみます。