スマートフォンがユーザーの位置、何をしているか、付近に何があるか、それに外の天気まで知っており、これらの情報を総合してユーザーの置かれた状況を把握して知的に反応できるとしたらどうだろう? 気味が悪いだろうか? すばらしく便利だろうか? われわれはすぐにどちらなのか実感することになりそうだ。
今週のGoogle I/Oデベロッパー・カンファレンスでGoogleはアプリのデベロッパー向けのツールを発表した。 このツールを利用するとデベロッパーは自分の置かれた環境を認識してそれに合わせて自らをカスタマイズするアプリケーションを開発することができるようになる。
たとえば、ユーザーがジョギングを始める時間に音楽ストリーミング・アプリを立ち上げると元気のいい曲がイアフォンに流れてくるというような仕組みだ。
またア薬局に寄って薬をピックアップするように促すリマインダー・アプリも登場するかもしれない。しかもこのリマインダーが流れるのは薬局の近くを通りかかり、かつ薬局がオープンしている時間帯に限られる。
デベロッパーこうした本当の意味でスマートな」アプリを開発できるようにするため、Googleは新しいAwareness API〔環境認識API〕を発表した。このツールはI/Oカンファレンス終了後まもなく利用可能になるはずだ。
実質的に、このAPIはこれまでも他のAPIを通じて可能であった多くの処理を統合するものだ。たとえばデバイスの位置情報にアクセスして置かれた場所を知り、またユーザーが車を運転していることを知るなどの処理だ。さらに付近のWiFiタワーやデバイスについての情報も収集できる。ユーザーがAndroid Wearを搭載したスマートウォッチをしていればその情報にもアクセスできるし、Chromecast(Google Cast)やGoogleが今回発表したAmazon Echoに対抗するスマート・スピーカー、 Google Homeとも会話する。
この機能がアプリに応用された場合、どんなことが可能かについて、Googleは上で述べたような例に加えていくつもの利用法を提案している。
たとえば、目覚まし時計アプリがスマート化され、ユーザーが前夜ベッドに入った時間と当時予定されている最初のミーティングの時間を総合して起床に最適の時間を決めることができるようになるという。そして目を覚ますと大型テレビに接続されたChromecastが今日の天気を画面に出してくれるわけだ。
アシスタント・アプリはカレンダーから今日の予定を読み取り、自宅の位置と移動方法を総合し、Google Homeを通じて「そろそろ出かける時間です」と教えてくれる。
スマート・ヘルス・アプリをインストールしておけば、ジョギングを始めると同時に、ユーザーがモニター機能をオンにするのを忘れていても、自動的にモニターを始めてくれる。
ユーザーが自然の中にいればランチャー・アプリがカメラ・アプリをスクリーンのいちばん目立つ場所に大きく表示してくれる。ランチャーはユーザーがきれいな景色や生き物に囲まれていればたくさん写真を撮るだろうと予期するわけだ。しかも写真を撮れば活動の種類や天候をタグとして付加するというボーナスも付く。こうしたデータは写真のメタダータの一部となるので、、後で「晴れた日、ジョギング中、ネイチャー」というような条件で簡単に見つけ出すことができる。
こうした機能の一部を実現するアプリはこれまでも存在した。しかしそのためにデベロッパーには複数のAPIを使うという手数がかかった。しかもGoogleによると、常に複数のAPIを使うと、場合によっては、アプリが遅くなり、メモリー容量を食い、バッテリー駆動時間を減らすなどの望ましくない事態を招く可能性があったという
これは非常に腹立たしい副作用で、ユーザーはそうしたアプリをアンインストールしてしまうことになりかねない。
新しいAwareness APIは単一のAPIでありながら、アプリが必要とする情報をすべて提供することが可能だ。それと同時にメモリーや電力の使用量などシステムの状態を最適に保つ手助けもしてくれる。これによってデバイスがクラッシュしたりバッテリーを使いきってしまうなどの現象を防ぐことができる。
Awareness APIは2つの異なる部分に分けられる。一組はアプリが現在の状況に対応できるようにする(Fence API)。もう一組はユーザーが置かれている現在の状況に関連する情報を求める(Snapshot API)。
Googleが披露した上述の例はそれぞれ興味深いが、オンライン不動産業のTruliaなどのパートナー企業が実際に示した例はどちらかというと地味なものが多かった。下の例でオープンハウスを実施している物件の近くを通りるとそれを教えてくれるというもの。
ただしラテン音楽のストリーミング・アプリ、Superplayer Musicの例は楽しそうだ。このアプリはユーザーがどこで何をしているかに応じて適切な音楽を推薦しようとする。たとえばこれからジムでトレーニングを始めようとしているときと、車で長距離の運転をしなければならないときでは推薦される楽曲が異なる。
ランチャー・アプリのNovaは環境を認識できるよう、全面的にアプリを書きなおしている。
環境認識では過去にも似たような試みはあったが、Googleの例はAPI1を通じてアプリそのものに緊密に統合されるという点が理にかなっている。置かれた状況についていちいちユーザーに入力を求めるのではなく、カレンダーなどを通じて自動的に情報を収集することでわずらしさが大幅に軽減され、スマートさが増してている。近くのAndroidデバイスと協調し、その情報も利用したりコントロールしたりできるというのも強みになるだろう。
デベロッパーはこちらから初期利用に参加できる。
[原文へ]
(翻訳:滑川海彦@Facebook Google+)