Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)

気がついたらGoogle Gears API Blog: Gears and Standardsを読んでいて、この中に
and we're working on resumable uploads, a geolocation API, and lots more fun things for the future.
と書かれているのを発見(強調は自分によるものです)。

"geolocation API"と聞いてはじめは住所から緯度経度を返すジオコーダのことかと思ったけどそうではなくて、クライアントのデバイスの現在位置を取得するためのものです。日本のケータイでいう位置情報取得APIみたいなもの。

そんな機能が実装される予定になっているとは、と思って調べたらいつのまにかいくつかの機能が追加されていました。API History - Google Gears API - Google Codeによると
Desktop API
デスクトップにショートカットが作れる
HttpRequest Module API
(以前はdbにアクセスすることしかできなかった)ワーカスレッドからXMLHttpRequestが使える
Timer API
HTML 5のタイマー実装
という地味ながらも、まじめにGearsを使うならあってほしい3つの機能が初回のリリースから追加されています(動作するプラットホームにもWindows Mobileが追加されていました)。

Location APIの実装

追加された/これから追加される予定のAPIについてはGoogle Gearsスタートガイドの著者の白石俊平さんが書かれたInfoQ: Google Gearsの現状、そして未来を占うに非常に詳しく書かれているのでご参照ください。 個人的にはLocation APIがどう実装されているのかに興味があるのでGoogle Gearsのソースコードを
svn checkout http://google-gears.googlecode.com/svn/trunk/ google-gears-read-only
でcheckoutしてきて location API を実装している部分を調べてみました。location APIの部分はgears/geolocationにあるものの、中身はインターフェイスだけ実装されていて返す値はダミーという状態でした。たしかにGoogle Gears API Blog: Gears and Standardsに we're working って書いてあったけど....

コードのほうには何もなかったので、W3Cにも提案していると書いてある仕様のほうLocationAPI - google-gears - Google Codeを読むと位置情報を提供する Location Provider についてNokiaの端末に実装されているLocation Acquisition API(GPSや基地局情報から位置情報を返すAPI)や無線LANの電波強度を使うことを想定しているようです。

モバイル端末向けGoogle mapsアプリでもGPSのない端末である程度現在位置をとれるので、これと似たようなものをGearsに実装しようということなのでしょう。

モバイル端末についての認識の差

Nokia端末のLocation Acquisition APIが想定されていることからわかるように、このGearsのLocation APIはこれまでの伝統的なIEやFirefoxのようなデスクトップのブラウザを対象に作られているわけではなさそうです。デスクトップのブラウザでもいちおうIPから都市レベルで位置を割り出せるようですがLocationAPIの仕様からしてもモバイル端末上のブラウザを意識していることが読み取れます。一定時間ごとに現在位置をコールバックで返してくれるwatchPositionなんて、デスクトップコンピュータの上で動いているブラウザには意味がありません。


いままでGearsやAIRに実装されているオフライン機能に何の意味があるのかまったく理解できませんでしたが、携帯電話会社の電波や無線LANの電波が必ず手に入るわけではないモバイル端末のことを考えて実装されているのかなと気がつきました。日本では携帯電話が極めて非力だったころから携帯電話からインターネットのサービスを使う基盤ができあがった結果、"ケータイとPC"という二つの異なるプラットホームだと考えがちです(実際プラットホームは大きく違うので無理のないことです)。
それに対してWindows MobileにしてもiPhoneにしても、PCのプラットホームを小さくして携帯電話に持ってきていて、わりとそのまま同じものが動くアメリカ的にはPCのブラウザも携帯のブラウザも同じようなものだと捉えているのかもしれません。


余談ですがLocationAPI - google-gears - Google Codeには、いま利用できる日本以外での位置情報取得方法についていろいろコメントが寄せられていておもしろいですよ!

PlaceEngineみたいなのはまだ海外にはないんですかねー。

tags

  • geo
  • google gears
  • mobile
  • 「Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)」のはてなブックマーク数
  • 「Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)」deliciousブックマーク数
  • 「Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)」をはてなブックマークに追加
  • save "Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)" to del.icio.us
  • 「Google Gearsの位置情報取得機能(まだぜんぜん実装されてないけど)」をリアルタイムブログ検索
  • permalink
  • Firebug1.2alpha向け $xでコンテキストを指定できるようにするためのuserchrome.jsスクリプト
  • infra-RED LED throwies をセンサバーのかわりにしてWiiリモコンを動かす

comments

TypeKey Enabled
スタイル用のHTMLタグが使えます。
*required
©2010 Kentaro Kumagai, GMO Internet Labs., GMO Internet, inc.
bits and bytes
2008 .05. 08 19:59

tagcloud

  • API1
  • C/C++2
  • E4X1
  • FUSE2
  • Firefox26
  • HTML4
  • IE1
  • MySQL1
  • OSX4
  • Opera2
  • PHP4
  • UI2
  • XML1
  • XPCOM4
  • XPath4
  • apache2
  • binary2
  • book1
  • data13
  • debug5
  • design1
  • experiments3
  • extension14
  • geo1
  • google gears2
  • google maps API1
  • greasemonkey4
  • httpd5
  • javascript19
  • linux1
  • logging2
  • mobile4
  • perl4
  • tips6
  • tool11
  • vim2
  • visualization3
  • widget1
  • wii3
  • windows7
  • サービス7
  • 和訳1

Archives

  • 2008.05 (3)
  • 2008.04 (4)
  • 2008.03 (4)
  • 2008.02 (6)
  • 2008.01 (3)
  • 2007.12 (4)
  • 2007.11 (5)
  • 2007.10 (4)
  • 2007.09 (4)
  • 2007.08 (4)
  • 2007.07 (8)
  • 2007.06 (7)
  • 2007.05 (4)
  • 2007.04 (5)
  • 2007.03 (6)
  • 2007.02 (4)
  • 2007.01 (6)

about

  • bits and bytesのXML
  • 「bits and bytes」のCreative Commons
  • Powered by Movable Type
  • イベントと地図 - モグ
  • Use ecto to blog!
  • bits and bytesのはてなブックマーク数
  • bits and bytesをMy Yahoo!に追加
  • Subscribe with Bloglines