![]()
[Adobe Max 2010]AIR for Android
こんにちは、研究員の鈴木です。
ちょっと遅くなってしまいましたが、Adobe MAX 2010のレポート2回目です。
初日の基調講演で、モトローラ社のDROID2というAndroidが搭載されたスマートフォンが参加者全員に配られたり、コミュニティエリアと呼ばれるブースがスポンサー企業のブースが展示されているエリアでもスマートフォン端末に関するブースが今年は沢山ある事からも、今年のMAXの見所の一つはスマートフォン=非PC端末だったと思います。
Adobe MAXの2日目は、モバイル向けのAIRアプリ開発に関するセッションを中心に回ったこともあり、その内容をレポートしたいと思います。
モバイル向け、AIR とは?
スマートフォンOSの1つである、Androidには、AIRのランタイム上で動くアプリケーションをインストールする事ができます。実際どのように動作するのかは、

Ryan Stewart氏のセッションで使われてたこのスライドが分かり易いのですが、AS3で書いたコードをAIRのランタイム化し、Android等のAIRが搭載されているモバイルOS上で実行するという流れになっています。
ちなみに、iPhoneのiOSに関してはPackeger for iPhoneを利用する事で、AIRのランタイムをネイティブアプリ化して実行するという形式を取っています。
それでは、実際にAndroid向けのAIRアプリを作る上で気をつける事をいくつかピックアップしてみたいと思います。
AIR for Androidで気をつけるべきポイント
•機種毎に解像度とスクルーンサイズが異なる。
•AndroidのネティブAPIが全て使えるわけでは無い
•GPUとCPUモードがある
•CPUは、現状600Mhzから1GBまで
•GPUは、現状OpenGL ES1.1から2.0まで
•RAMは、現状128MB〜768MBまで
•ROMは、現状1GB以下
CPUやメモリーに関しては、目安として、
"7年前くらいのPCのスペックと考えると分かりやすい"との説明がありました。
今回は、その中でも開発者を一番悩ませるであろう、機種毎に異なる解像度とスクリーンサイズについて書いてみたいみたいと思います。
機種毎に異なる解像度とスクリーンサイズ
まず、モバイル向けAIRアプリの開発において、開発者を一番悩ませる問題が、機種毎に解像度とスクリーンサイズが違う事です。
代表的な機種をまとめて見ると。。。
| 機種 | 解像度 | スクリーンサイズ |
| Nexus One/Droid Icredible/HTC Desire | 800×400 | 3.7” |
| Droid/Droid2 | 800×480 | 3.7” |
| Samusung Galaxy 5 Vibrant | 800×400 | 4.0” |
| HTC Evo 4G / HTC Desire HD / Droid X | 854×480 | 4.3” |
| iPhone3G/iPhone3GS | 480×320 | 3.5” |
| iPhone4 | 960×640 | 3.5” |
| iPad | 1024×768 | 9.7” |
| Galaxy Tab/PlayBook | 1024×600 | 7” |
代表的な機種でこれだけサイズが違う事に驚かされます。
マーケットフィルタを利用する
解像度やスクリーンサイズが異なる場合、有効な対処方法としては、マーケットフィルタを利用する方法が上げられます。マーケットフィルタ自体は、アプリのAndroidManifest.xmlに記述するのですが、xmlに、
android:largeScreens=["true" | "false"]
android:anyDensity=["true" | "false"] />
のような記述を行う事で、開発者の指定したスクリーンサイズに対応したAndoridでしかアプリケーションをインストールできないようにする事ができます。
今後加速するであろうAndroid端末
日本でも3キャリアともにAndroid端末を発表したりと、今後Androidを搭載したスマートフォン端末の利用者が増えていてく事が予想されます。初日の基調講演でも、非PCユーザーのネット接触率が2014年には、PCユーザーを追い越すであろうとの発表もありました。
今後増えて行くであろうAndoridに対応したアプリケーションの開発を今の段階から進めるのも良いかもしれないですね!
