山田祥平のRe:config.sys

【特別編】Android“L”とChromeが曖昧にするWebとAppの境目

 米サンフランシスコで開催されたGoogle I/Oでお披露目された「L」こと「Android L Developer Preveiw」。Materialによる新しいUI、ランタイムとしてのART、通知の拡張など話題は多い。だが、忘れてはならないのがChromeの動向とコンテンツ指向の意識だ。

没入的なモバイルアプリとタブ

 8年ほど前に、Windowsのタブの話を書いたことがあり、その時に、Microsoftが犯したもっとも大きな過ちが、WindowsアプリケーションにおけるMDI(マルチドキュメントインターフェイス)ではないかと指摘した。

 MDIでは、1つのアプリケーションが、そのウィンドウ内に複数のドキュメントを子ウィンドウとして開く。いわばウィンドウシステム内に、もう1つのウィンドウシステムを構築してしまうが、それゆえに、今アプリケーションがどんなドキュメントを開いているのかが分かりにくくなってしまう。

 時代は変わり、今は、そのMDIはタブのインターフェイスとして健在だ。また、Windowsはタスクバーの仕組みをうまく使い、MDIの分かりにくさを解消するとともに、タブを複数のウィンドウに見せかけることで、MDIでありながらSDI(シングルドキュメントインターフェイス)であるかのような振る舞いをさせることができるようになった。

 比較的広い画面を持つPCのデスクトップでも、タブはやっかいだが、多くのユーザーは、そのタブのインターフェイスに慣れ親しんでしまっている。Androidなどのモバイル系OSは、基本的にアプリが全画面を占有する没入感のある(イマーシブな)UIを持っているが、それでもタブを使うというのはどうなのだろうと思っていた。Androidで単純にホーム画面からChromeを開くと、こんなのいつ見たっけというくらいに古いものから10個、20個のタブが開いていることもある。AndroidのChromeには、全てのタブを一度に閉じるという方法がないので、開いたタブがそのままになっていることが多いのだ。

Webもアプリもタスク

 「L」ではそのChromeについに手が入る。タスクの考え方が変わるからだ。Lにとってのタスクは、個々のアプリが宣言したアプリ内のアクティビティ、そしてChromeの個々のタブとなる。つまり、アプリが1つであっても複数のタスクとして見える場合があり、さらにChromeは開いている複数のタブそれぞれが1個のタスクとしての見かけを持たされる。要するに“なんちゃってSDI”だ。

 Androidの画面下部には、コマンドボタンが並んでいる。左から「戻る」、「ホーム」、「タスク」で、Samsung製デバイスだけが頑なに逆順となっている。そのSamsungも、最新機種では左端の「メニュー」を「タスク」に変更している。それだけ「タスク」がAndroid OSにとって重要な意味を持つことになることを分かっていたのかもしれない。

 Lでは、タスクボタンをタップすると、タスクリストがスタックされたカードのように表示され、それらをめくるようにしてタスクを選ぶことができる。Windows Vistaのフリップ3Dみたいだと言うと怒られそうだが、そういうイメージだ。

 さらにLからは、1つのアプリが複数のアクティビティをマルチタスク的に持つことができるようになる。つまり、MDIであるにも関わらず、SDIのように振る舞えるという点で、Windowsがやっているアプローチにも似ている。このため、このタスクリストには開いているドキュメントごとに1つのアプリがいくつも登場する可能性がある。そして、そんなアプリの1つがChromeというわけだ。結果として、Chromeの1つ1つのタブは、ユーザーから見ればタスクとして認識されるようになる。

JKの時代は終わり、Lの時代が今始まる

 Androidにおけるタスクの概念の変更の背景には、独立したアプリとWebブラウザがタブとして開くHTML5アプリの区別を曖昧なものにする狙いがあると思われる。

 ユーザーからしてみれば、どちらもアプリと称してもらって構わないわけだし、アプリが複数のドキュメントを開いているなら、それぞれがタスクとして表示されていた方が便利で分かりやすい。

 さらに、Lには検索結果から直接ネイティブアプリを開く、インデクシングのためのAPIも実装されるという。一旦Webを開いて、そこから専用アプリに遷移するのではなく、検索結果からいきなりネイティブアプリがそのコンテンツを開くわけだ。これもまた、Webとアプリの境界を曖昧にする。ユーザーにとって重要なのはコンテンツであり、それを開くのは何であっても構わないということだ。

 今回の改変は、こうした面が考慮されていると同時に、Chromeだけで構成されたスマートフォン、いわば、Chromebookならぬ、ChormePhoneのような方向性も考えているのではないかという予測もできる。今後、より廉価な端末を求める市場にAndoroidが入っていくためには、こうした割り切りも求められるかもしれないからだ。少なくとも、Firefox OSやTizenの台頭に十分な対抗ができるように準備をしておく必要はあるということだ。だとすれば、その次には、オフラインの時にどうすればいいのかという議論が待ち受けているはずだ。

 Lにおいて、新しいデザインのUIを楽しませてくれるMaterialは、誰の目にもOSが大きく変わったことを実感させるだろう。見かけの部分には真っ先に目が行くし、ユーザーにとってはそれが新機種への買い替えなどの意欲を高めもする。

 こうした派手な部分に加えて、マルチネットワークコネクションや、Bluetoothブロードキャスティングなどへの対応、NFCの拡張など細かい部分にも手が入る。企業向けとしては、デバイスを管理された領域とそうでない領域に区切り管理しやすくするようなプロビジョニングの機能や、タスクロックの機能などが実装される。細かいところでは、IMEを地球儀ボタンで切り替えるiOSのような機能も追加されるようだ。

 Lについては、デベロッパプレビューという形式で、公開されたものが、即日エンドユーザーの端末にOTAで落ちてきて、すぐに使い始められるようにはなっていない。ちょうど、AppleのiOSの新バージョンが開発者向けに公開されるときのようなスタイルだ。導入済みデバイスの配布もなかった。

 エンドユーザーとしては、この秋の正式公開を楽しみに待つことにしたい。それまでに開発者は、このLに向けて、自分たちのアプリをじっくりとバージョンアップしてくれるだろう。

 秋と言えば、iOSもほぼ同時期にバージョンアップだ。インタラクティブな通知バーやアプリ間での連携を可能にする「Extensibility」の仕組みなど、Android的な要素も垣間見える。今回の Google I/Oで分かるように、さまざまなプラットフォームで存在感を高めようとしているAndroidと、ひたすらハンドセットの領域で高みを狙うiOS。引き続き、注目し続けたいと思う。いろいろな意味で、今年のGoogle I/Oは面白かった。

(山田 祥平)