[JavaScript]Geolocation APIのおさらい
どんな情報が取れるのか?
latitude 緯度
longitude 経度
altitude 高度
accuracy 緯度経度の精度
altitudeAccuracy 高度の精度
heading 方角
speed 速度
使用可能かのチェック
if(navigator.geolocation){ /** available **/ }else{ /** not support **/ }
getCurrentPosition
navigator.geolocation.getCurrentPosition(function(position){ console.log("緯度:" + position.coords.latitude); console.log("経度:" + position.coords.longitude); console.log("緯度経度の精度:" + position.coords.accuracy); });
watchPosition, clearWatch
var watchID = navigator.geolocation.watchPosition(function(position){ console.log("緯度:" + position.coords.latitude); console.log("経度:" + position.coords.longitude); console.log("緯度経度の精度:" + position.coords.accuracy); }); document.querySelector('#cancelLocationWatch').addEventlistener(function(e){ navigator.geolocation.clearWatch(watchID); });
取得する位置情報の精度をあげる
navigator.geolocation.getCurrentPosition(function(position){ console.log("緯度:" + position.coords.latitude); console.log("経度:" + position.coords.longitude); console.log("緯度経度の精度:" + position.coords.accuracy); },function(e){ console.log("error"); },{enableHighAccuracy=true});
結構誤差が少なくなるみたい。
https://www.gunjou.co.jp/2010/08/22/google-maps-api-with-gps-navi-7.html
端末によって取得できる情報に差異がある
要調査