tree: 6f5518450b71621beb21ef32b43662e44ae884af [path history] [tgz]
  1. index.md
  2. README.md
doc/ja/README.md

cordova-plugin-geolocation

Build Status

このプラグインは緯度や経度などのデバイスの場所に関する情報を提供します。 位置情報の共通のソースはグローバル ポジショニング システム (GPS) と IP アドレス、RFID、WiFi および Bluetooth の MAC アドレス、および GSM/cdma 方式携帯 Id などのネットワーク信号から推定される場所にもあります。 API は、デバイスの実際の場所を返すことの保証はありません。

この API はW3C 地理位置情報 API 仕様に基づいており、既に実装を提供しないデバイス上のみで実行します。

警告: 地理位置情報データの収集と利用を重要なプライバシーの問題を発生させます。 アプリのプライバシー ポリシーは他の当事者とデータ (たとえば、粗い、罰金、郵便番号レベル、等) の精度のレベルでは共有されているかどうか、アプリが地理位置情報データを使用する方法を議論すべきです。 地理位置情報データと一般に見なされる敏感なユーザーの居場所を開示することができますので、彼らの旅行の歴史保存されている場合。 したがって、アプリのプライバシー ポリシーに加えて、強くする必要があります (デバイス オペレーティング システムしない場合そう既に)、アプリケーションに地理位置情報データをアクセスする前に - 時間のお知らせを提供します。 その通知は、上記の (例えば、 [ok]おかげで選択肢を提示する) によってユーザーのアクセス許可を取得するだけでなく、同じ情報を提供する必要があります。 詳細については、プライバシーに関するガイドを参照してください。

このプラグインは、グローバル navigator.geolocation オブジェクト (プラットフォーム行方不明ですそれ以外の場合) を定義します。

オブジェクトは、グローバル スコープでですが、このプラグインによって提供される機能は、deviceready イベントの後まで使用できません。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    console.log("navigator.geolocation works well");
}

インストール

これはコルドバ 5.0 + (現在安定 1.0.0) を必要とします。

cordova plugin add cordova-plugin-geolocation

コルドバの古いバージョンでも非推奨 id (古い 0.3.12 と) 経由でインストールできます。

cordova plugin add org.apache.cordova.geolocation

また、レポの url 経由で直接インストールすることが可能だ (不安定)

cordova plugin add https://github.com/apache/cordova-plugin-geolocation.git

サポートされているプラットフォーム

  • アマゾン火 OS
  • アンドロイド
  • ブラックベリー 10
  • Firefox の OS
  • iOS
  • Tizen
  • Windows Phone 7 と 8
  • Windows 8
  • Windows

メソッド

  • navigator.geolocation.getCurrentPosition
  • navigator.geolocation.watchPosition
  • navigator.geolocation.clearWatch

オブジェクト (読み取り専用)

  • Position
  • PositionError
  • Coordinates

navigator.geolocation.getCurrentPosition

Position オブジェクトを geolocationSuccess コールバックにパラメーターとしてデバイスの現在位置を返します。 エラーがある場合 geolocationError コールバックには、PositionError オブジェクトが渡されます。

navigator.geolocation.getCurrentPosition(geolocationSuccess,
                                         [geolocationError],
                                         [geolocationOptions]);

パラメーター

  • geolocationSuccess: 現在の位置を渡されるコールバック。

  • geolocationError: *(省略可能)*エラーが発生した場合に実行されるコールバック。

  • geolocationOptions: *(オプション)*地理位置情報のオプションです。

// onSuccess Callback
// This method accepts a Position object, which contains the
// current GPS coordinates
//
var onSuccess = function(position) {
    alert('Latitude: '          + position.coords.latitude          + '\n' +
          'Longitude: '         + position.coords.longitude         + '\n' +
          'Altitude: '          + position.coords.altitude          + '\n' +
          'Accuracy: '          + position.coords.accuracy          + '\n' +
          'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
          'Heading: '           + position.coords.heading           + '\n' +
          'Speed: '             + position.coords.speed             + '\n' +
          'Timestamp: '         + position.timestamp                + '\n');
};

// onError Callback receives a PositionError object
//
function onError(error) {
    alert('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
}

navigator.geolocation.getCurrentPosition(onSuccess, onError);

navigator.geolocation.watchPosition

位置の変更が検出された場合は、デバイスの現在位置を返します。 取得されると、デバイスの新しい場所、geolocationSuccess コールバック パラメーターとして 位置 オブジェクトを実行します。 エラーがある場合、geolocationError コールバック パラメーターとして PositionError オブジェクトで実行します。

var watchId = navigator.geolocation.watchPosition(geolocationSuccess,
                                                  [geolocationError],
                                                  [geolocationOptions]);

パラメーター

  • geolocationSuccess: 現在の位置を渡されるコールバック。

  • geolocationError: (省略可能) エラーが発生した場合に実行されるコールバック。

  • geolocationOptions: (オプション) 地理位置情報のオプションです。

返します

  • 文字列: 時計の位置の間隔を参照する時計 id を返します。 時計 id で使用する必要があります navigator.geolocation.clearWatch 停止位置の変化を監視します。

// onSuccess Callback
//   This method accepts a `Position` object, which contains
//   the current GPS coordinates
//
function onSuccess(position) {
    var element = document.getElementById('geolocation');
    element.innerHTML = 'Latitude: '  + position.coords.latitude      + '<br />' +
                        'Longitude: ' + position.coords.longitude     + '<br />' +
                        '<hr />'      + element.innerHTML;
}

// onError Callback receives a PositionError object
//
function onError(error) {
    alert('code: '    + error.code    + '\n' +
          'message: ' + error.message + '\n');
}

// Options: throw an error if no update is received every 30 seconds.
//
var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { timeout: 30000 });

geolocationOptions

地理位置情報 の位置 の検索をカスタマイズするための省略可能なパラメーター.

{ maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };

オプション

  • enableHighAccuracy: 最高の結果が、アプリケーションに必要があることのヒントを示します。 既定では、デバイスの取得を試みます、 Position ネットワーク ベースのメソッドを使用します。 このプロパティを設定する true 衛星測位などのより正確な方法を使用するためにフレームワークに指示します。 (ブール値)

  • タイムアウト: への呼び出しから通過が許可される時間 (ミリ秒単位) の最大長 navigator.geolocation.getCurrentPosition または geolocation.watchPosition まで対応する、 geolocationSuccess コールバックを実行します。 場合は、 geolocationSuccess この時間内に、コールバックは呼び出されません、 geolocationError コールバックに渡される、 PositionError.TIMEOUT のエラー コード。 (と組み合わせて使用するときに注意してください geolocation.watchPositiongeolocationError 間隔でコールバックを呼び出すことができますすべて timeout ミリ秒 !)(数)

  • maximumAge: 年齢があるミリ秒単位で指定した時間よりも大きくないキャッシュされた位置を受け入れます。(数)

Android の癖

enableHighAccuracy オプションが true に設定しない限り、アンドロイド 2.x エミュレーター地理位置情報の結果を返さない.

navigator.geolocation.clearWatch

watchID パラメーターによって参照される、デバイスの場所への変更を見て停止します。

navigator.geolocation.clearWatch(watchID);

パラメーター

  • watchID: の id、 watchPosition をクリアする間隔。(文字列)

// Options: watch for changes in position, and use the most
// accurate position acquisition method available.
//
var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { enableHighAccuracy: true });

// ...later on...

navigator.geolocation.clearWatch(watchID);

Position

Position 座標と地理位置情報 API で作成されたタイムスタンプが含まれます。

プロパティ

  • coords: 地理的座標のセット。(座標)

  • timestamp: 作成のタイムスタンプを coords(DOMTimeStamp)

Coordinates

Coordinates のオブジェクトは現在の位置のための要求でコールバック関数に使用する Position オブジェクトにアタッチされます。 位置の地理座標を記述するプロパティのセットが含まれています。

プロパティ

  • latitude: 10 度緯度。(数)

  • longitude: 10 進度の経度。(数)

  • altitude: 楕円体上のメートルの位置の高さ。(数)

  • accuracy: メートルの緯度と経度座標の精度レベル。(数)

  • altitudeAccuracy: メートルの高度座標の精度レベル。(数)

  • headingし: 進行方向、カウント、真北から時計回りの角度で指定します。(数)

  • speed: 毎秒メートルで指定されたデバイスの現在の対地速度。(数)

アマゾン火 OS 癖

altitudeAccuracy: null を返すことの Android デバイスでサポートされていません.

Android の癖

altitudeAccuracy: null を返すことの Android デバイスでサポートされていません.

PositionError

PositionError オブジェクト navigator.geolocation でエラーが発生したときに geolocationError コールバック関数に渡されます。

プロパティ

  • コード: 次のいずれかの定義済みのエラー コード。

  • message: 発生したエラーの詳細を説明するエラー メッセージ。

定数

  • PositionError.PERMISSION_DENIED
    • ユーザーの位置情報を取得するアプリを許可しない場合に返されます。これはプラットフォームに依存します。
  • PositionError.POSITION_UNAVAILABLE
    • デバイスが、位置を取得することができます返されます。一般に、つまり、デバイスがネットワークに接続されていないまたは衛星の修正を得ることができません。
  • PositionError.TIMEOUT
    • デバイスがで指定された時間内の位置を取得することができるときに返される、 timeout に含まれている geolocationOptions 。 使用すると navigator.geolocation.watchPosition 、このエラーが繰り返しに渡すことが、 geolocationError コールバックごと timeout (ミリ秒単位)。