non vorrei lavorare

昔はおもにプログラミングやガジェット系、今は?

XPERIA SO-01Bで非アプリで現在地を取得するには

getCurrentPositionでは、ダメ

GPSHTML5などでググると、出てくるnavigator.geolocation.getCurrentPositionは 大雑把な位置情報しか取得できない。 引数の説明にタイムアウト値があるから、これで指定した時間をかけてGPSから位置情報を 取得すると勘違いしてしまうが、少なくともXPERIA SO-01Bでは、即座に大雑把な位置情報が 返されてしまい、実用的な位置情報が取得できない。

 

で、どうするか?

navigator.geolocation.watchPositionを使う。このメソッドで、取得される。 位置情報posのpos.coords.accuracyが一定の精度に以下になることを終了条件にして 連続して位置情報を取得することで、実用的な現在地の位置情報が取得できた。

道案内のサンプルを作ってみた

See the Pen Yahoo!経路地図てすと GPS対応版 by Junichi Kajiwara (@kjunichi) on CodePen.

XPERIAでみるにはこちら

http://chart.apis.google.com/chart?chs=150x150&cht=qr&chl=http%3A%2F%2Fjsrun.it%2Fkjunichi%2FmcMP

関連記事

6年前の記事

4年前の記事

1年後の記事

3年後の記事

5年後の記事