説明
現在地の位置情報を定期的に取得するには、まずmanifest.webappファイルのpermissionsを設定しておく必要があります。そこでgeolocationを指定しdescriptionに使用目的などを書いておきます。(descriptionは何でもよい)
次にnavigator.geolocation.watchPosition()を使って現在位置を定期的に取得します。このwatchPosition()メソッドを使うと位置情報を取得してもよいかどうか尋ねてきます。ユーザーがOKだった場合は位置情報を取得できます。watchPosition()メソッドの最初のパラメーターには位置情報が取得できた場合に呼び出すイベントハンドラ(関数)を指定します。2番目のパラメーターにはエラーが発生した際に呼び出すイベントハンドラ(関数)を呼び出します。3番目のパラメーターには位置情報を取得するためのオプションを指定します。
位置情報に関数オプションはMDNの「
Geolocation の利用」を参照してください。
ポイントとなるコード部分
var watchID = navigator.geolocation.watchPosition(function(position) {
var lat = position.coords.latitude; // 緯度
var lon = position.coords.longitude; // 経度