Google Mapsといえばスムーズな縮小・拡大や移動が可能な地図サイト(Webツール)だが、Ajaxを使っているため携帯電話などのモバイル機器では使えない場合が多い。
あるいは、使えたとしても非常に重く、実用的ではない。
しかし、新たに登場したこのGoogle Static Map APIを使えば携帯電話でもGoogle Mapsの地図を表示することが可能になった。
もちろん、スムーズな縮小・拡大や移動はできないが、ちょっとした地図表示には十分使える。
で、さっそく自作の位置情報ツールに組み込んでみたのだが、なぜかPCでは表示できるのにW44Tから表示できない。
GIFのフォーマットがダメなのかと思ったが、ローカルに保存した画像は読める。
その後、いろいろやっていて原因が判明。
Google Static Maps APIの公式紹介ページにあるようにパラメータを改行で区切ってあるとだめらしい。
要するにimgタグのsrc内が1行に収まっていないと読み込めないようだ。
ちょっと使ってみた感じではよさそうであるが、縮尺が表示されない(※)のとzoom指定なし(マーカー設置時)の場合最大ズームになってしまい田舎では役に立たない点が少々気になる。
まあ、その辺は仕方がなさそうなのでこちら側の実装で工夫することにしよう。
※調べてみたところ、Google Mapsだと1ピクセルあたりのメートル数は217-z(ただしz=0のときは65536)っぽい。たぶんGoogle Static Mapsのzoomも同じだと思う(少なくともぱっと見で違いはない)。
ちなみに以前から携帯電話向けにGoogle Mapsのデータを使う方法はあったらしい。
ここギコ!: Google Mapsの地図を自由に切り出すインタフェースがあった
ただ、公式のサービスではないっぽいし、パラメータの指定がStatic Mapsより面倒そうだ。