GeoLocation API メモ

//位置を取得するときのオプション
var positionOptions ={
enableHighAccuracy; true,
timeout:6000,
maximumAge:0
};
//位置の取得に成功したら実行する
function successCallback(position)~{
alert(position.coords.latitude +’,’+postion.coords.longitude);
}
これで緯度経度が表示
//位置取得失敗したら実行
function errorCallback(positionError){
alert(positionEror.code +’,’+poositionError.message);
}
//位置取得
function getPosition(){
navigator.getlocation.getCurrentPosition(successCallback,errorcallback,positionOptions);
}
あらかじめ
positionOptions
successCallback
errorCallback
を作成して
あとは、
navigator.geolocation.getCurrentPostion()
の引数に当てはめている
positionOptions の意味だけど
enableHighAccuray
高精度の情報を取得
timeout
タイムアウトまでの時間
maximumAge
位置情報の有効期限
0なら常時更新になる
今回は
getCurrentPosition()
だけど、これは1回しか取得しないので
通常、位置情報アプリをつくるなら
位置情報を継続して取得する
watchPosition(successCallback,errorcallback,positionOptions)
こちらをつかう
ただし、ずっと動かすわけにはいかないので
止めるための機能もある
それが
clearWatch(watchId)
これで
識別番号 watchId で稼働している位置情報の監視を停止できる
watchId は watchPosition() の戻り値になる
また
function successCallback(position){
………}
のところで
プロパティがでてきたので、これも解説メモ
coords.altitude
緯度
coords.longitude
経度
coords.altitude
高度をmで表す
coords.altitudeAccuracy
高度の精度を表す
coords.heading
方角を表す
coords.speed
速度を表す
timestamp
位置を取得した自国のタイムスタンプを表す
最後に positionError のプロパティ
これは
function errorCallback(positionError){
…..}
の中で使っている
code
以下の数値がエラーの意味になる
1 PERMISSION_DENIED
2 POSITION_UNABAILABLE
3 TIMEOUT
message
エラーメッセージ