2012年6月8日金曜日

Android 3.0の新API " Fragment "、断片化でスケーラビリティ向上

Android アプリ開発者向けの話題。フラグメンテーションといえば、多数の企業が参入するAndroidはプラットフォームとしてバラバラで開発も利用も大変だ、との主張でよく使われる言葉ですが (たとえば競合OSの会社CEO氏談)、それとはあまり関係なく、Googleは Android 3.0 に新機能 Fragment API を導入します。簡単にいえば、フラグメントはアプリの画面 (Activity) を再利用可能な小単位 (fragment) に分割することで、ディスプレイサイズの異なるデバイスに最小の労力で最適化したり、アプリをシンプルで組みやすくするフレームワーク。

リンク先 Android dev Blog では例として、見出しと内容をそれぞれ別のフラグメントとして書くサンプルを載せています。フラグメントを組み合わせることで、画面の広いデバイスでは左右に2ペイン表示を、小さなデバイスでは見出し画面と内容画面の遷移表示を最小の労力で記述できる仕組みです。それぞれの断片は画面遷移を通してデータを保持できるため、単にレイアウトが楽になっただけではなくアプリ自体のコーディングも楽になります。

Fragment がAPIとして提供されるのはAndroid 3.0から。しかしそれでは現行の携帯向けアプリにタブレット向けレイアウトも持たせたい場合に結局 3.0以降向けと以前向けを作ることになってしまうため、Googleは3.0以前のシステムでも Fragments を利用できるスタティックライブラリ版の提供も予定しています。ユーザー視点では開発者の労力が減るらしい、タブレットでさらに使いやすいアプリが増えそう、最新OSでなくても完全に置いてけぼりではないかも、といった程度の話ですが、開発者視点では例の「分断か統合か」論争になったとき、「確かにAndroidはフラグメンテーションのおかげで多数のデバイスに対応させても開発が楽だね」「??」と主張して煙に巻くことができます。

0 件のコメント:

コメントを投稿