何故 Android は iOS より反応が遅く感じるのか?

記事元: Why Android Will Always Be Laggier Than iOS.

実際、iPhone を使うと Android に比べて、画面がスムーズに動くように感じますね。iPhone は、指がタッチするとほぼ遅延なく反応しますが、Android は、Honeycomb になってもまだ iPhone より遅延を感じる場合があります。

確かに、Android は、Honeycomb まで、UI操作にハードウェアアクセルレーターを使用していなかったため、ラグタイムがあってもしょうがなかったでしょうが、Honeycomb になってもどうもパッとしません。最近の Android携帯は 1GB RAM 搭載など iPhone4S(512MB) 同等以上のハードウェアスペックを持ってるので、どうやらハードウェアの問題では無いようです。では何故?。

曰く、AndroidのUIが下記の設計上の制約で完全に滑らかになることはないそうです。

     – UIのレンダリングには、アプリケーションのメインスレッドで発生します
     – UIのレンダリングは、通常の優先度を持っています

つまり、iOS が、タッチされたらとりあえず、それに対する反応を返すような構造になっているに比べ、Android の UIレンダリングは、通常のプロセスと同等の動作となるため、どうしても遅延が解消できないわけです。

では、なぜ Androidチームは、このようなレンダリングのフレームワークを設計したのでしょう?。

Android の作成は、iPhone のリリース前に始まっていました。ターゲットは Blackberry。当時、キーボードとトラックボール全盛で、マルチタッチは、想定外。iPhoneが出てきたときに、Androidチームは、競合他社の製品リリースラッシュで、残念ながら、UIフレームワークを書き換えるには遅すぎたそうです。

 じゃあ、何故 Google はフレームワークを変更しないのでしょう?。フレームワークの変更で Andoroid マーケットのアプリがそのフレームワークに書きなおすのは大変ですからね。

とはいえ、フレームワークの変更なんて Apple はお手の物 Google がやらないとは限らないし、ハードウェアの進化で iOS の設計上のアドバンテージは少なくなっていきそうです。

Leave a Reply