多種多様な候補から自分好みの端末を選択でき高度なカスタマイズが可能、それがAndroidの魅力であり強みです。しかし、その自由度の反面わかりにくさを指摘されることも少なくありません。このコーナーでは、そんな「Androidのここがわからない」をわかりやすく解説します。今回は、「Androidの「断片化問題」とは?」という質問に答えます。

***

Androidの「断片化(フラグメンテーション)」とは、端末メーカーごとにAndroid OSとしての統一性が失われてしまう状況をいいます。パソコンで断片化というと、ひとつのデータがハードディスク上の物理的に離れた位置に保存されている状態を指しますが、Androidでは「本来大きな差がないはずのスマートフォンとしての外観/操作性にばらつきが生じた状態」が断片化です。

そのような違いが生じてしまう理由は、Androidならではの「自由度の高さ」にあります。Android OSは、Google(Open Handset Alliance)が旗振り役となって開発が進められますが、その設計図ともいえるソースコードは公開されており、端末メーカーの裁量である程度手を加えることができます。だから"素の状態"ではすべての端末が似てしまいますが、ユーザインターフェイス(画面やボタン類などのデザイン)や標準装備のアプリを変えることにより、ひと味ちがうAndroid端末に仕上げることができます。

ユーザインターフェイスは好みの問題として片付けることもできますが、困るのは「解像度の断片化」です。Android端末の場合、ハードウェアの仕様はメーカーに大きな裁量がありますから、液晶画面の物理的な大きさや解像度(ピクセル数)はばらつきがちです。システムキーの配置次第では、実質的な表示領域が変わってくることもあります。

端末ごとに解像度が異なると困るのは、アプリ開発者です。すべてのAndroid端末の解像度や表示領域を想定して開発しようとなると、かなりの手間とコストが発生するからです。この問題は、Androidの自由度の高さが逆に作用してしまう例のひとつといえるかもしれません。

ユーザインターフェイスや標準装備アプリが異なる断片化はともかく、「解像度の断片化」はアプリ開発を妨げる要因となっています(写真は本文と関係ありません)

(記事提供: AndroWire編集部)