2009-11-28

Google Static Maps APIで作成した地図画像を携帯で見ようとしても見れないことがある

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク
Google Static Maps APIで地図画像を作れるわけですが、ソコニイクでもこの機能を使っています。
この画像を携帯で見たときになんか見れたり見れなかったりすることがありました。
見れなくてもリロードすれば見れたりすることが多かったわけですが、たまになんどリロードしてもダメなときもありました。
同じ画面をPCの方から確認すると問題なく見れてしまう感じだったのです。

私が持っている携帯の調子が悪いのかな?と思ったりもしたのですが、調べてみると似たようなことが他の人にも起こっていることがわかりました。

http://okwave.jp/qa5396695.html
が似たような現象で、どうも携帯だとGoogle Static Maps APIの回数制限にかかりやすい感じということがわかりました。
そして、Google Static Maps API Version2にするのもよさそうな感じということがわかりました。
しかし回数制限にひっかかるとメーターが振り切った画像が出ると書かれているのですが、私の現象では普通の画像リンク切れみたいな感じでちょっと違う感じもします。
と思いつつソコニイクでもGoogle Static Maps API Version2に書き換えてみました。

他にも調べてみると
http://php.tekmemo.net/?p=1111
という記事もあり、こちらは画像がリンク切れみたいな感じと私の現象により似ている感じです。
コチラでは必須パラメータsensorの付け忘れが原因だったようで、私の場合はsensorはつけていたのでこちらも違う感じです。

でいろいろ調べていたところ私がGoogle Static Maps APIを呼ぶときですが、以下のように呼ぶべきところを
http://maps.google.co.jp/maps/api/staticmap?
size=300x200&path=color:0xFF0000|weight:40|0,0|35,139&
sensor=false&key=[MAPS_API_Key]
&がエスケープ処理が係っていて&となっていて
http://maps.google.co.jp/maps/api/staticmap?
size=300x200&path=color:0xFF0000|weight:40|0,0|35,139&
sensor=false&key=[MAPS_API_Key]
となっていました。
なのでこちらも直しました。

そしたらなんか調子よくなってしまいました。
APIをversion2にするのとエスケープ処理をとめるのを同時にやってしまったのでどちらが本当の原因だったのかわからなくなってしまいました。

ちなみにGoogle Static Maps APIの呼び方にエラーがあった場合は、エラーメッセージが表示されるようです。
<img src="http://maps.google.co.jp/maps/api/staticmap?
size=300x200&path=color:0xFF0000|weight:40|0,0|35,139&
sensor=false&key=[MAPS_API_Key]">
としているとエラーになるとリンク切れにしか見えませんが
<a href="http://maps.google.co.jp/maps/api/staticmap?
size=300x200&path=color:0xFF0000|weight:40|0,0|35,139&
sensor=false&key=[MAPS_API_Key]">test</a>
としてリンク先を見ればエラーメッセージが確認できたりします。
コメントを投稿