2011-10-10 14 views
10

携帯電話ネットワークからのGPS位置情報ではなく、GPS衛星を使用していないようです。 私は正確さに満足していない、常に150-1000メートルの間。 GPSアクティビティロゴも表示されません。Phonegap AndroidとGPS satellite

他の方法が利用できる場合でも、Android搭載端末でGPS衛星を使用する方法はありますか? GPS機能を有効にするためのデフォルト機能を無効にする方法はありますか?事前に

おかげ

+1

これはここに追加されましたhttp://stackoverflow.com/questions/7518468/phonegap-gps-without-internet – Andy

+2

解決策は見つかりましたか? Cordova 3.0.0で私にとっても同じです.GPアイコンはenableHighAccuracy:trueでも表示されません。 – arlg

答えて

11

のPhoneGapは、実際にAndroidプラットフォームと同じようにGPS衛星ジオロケーションを使用しています。携帯電話のGPSが有効になっている場合は、150m以上の精度で位置情報を受信する必要があります。 geolocation.getCurrentPosition()またはgeolocation.watchPosition()メソッドを呼び出すたびに、PhoneGapのGeoListenerクラスは、GPSプロバイダ NETWORKプロバイダを要求し、両方のプロバイダのリスナを作成します(存在する場合)。これが広範囲の精度を得ている理由です。

精度の高い場所を強制的に使用する場合は、上記のメソッドに渡されるパラメータgeolocationOptionsをtrueに設定することができます。あなたはより多くの制御、あなたがそうするのPhoneGapのAPIを拡張することができ、ロケーション要求のより正確な振る舞いを持つようにしたい場合はgeolocationOptions

navigator.geolocation.watchPosition(
    onSuccess, onError, 
    { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true }); 

:APIをチェックしてください。

+6

Cordova 3.0.0で私にとっては同じですが、enableHighAccuracy:trueの場合でもgpsアイコンが表示されず、アプリが適切な位置に表示されません。 – arlg

+1

同じ問題、GPSプロバイダーが無視されるように見える、ネットワークプロバイダーのみが使用されます。ネットワークプロバイダをオフ(GPSオン)に設定すると、ポジショニングは実行されません。プラス、私はネットワークプロバイダを設定すると、それはアプリがそれを無視するようだ、それはもはや検出されないと私はアプリを閉じてそれを再起動する必要があります。 – smarques

+0

私はジオロケーションAPIとアンドロイドデバイスで同じ問題を抱えています。 enableHighAccuracyをtrueに設定することは、依然としてセルまたはネットワークベースの場所を優先しているようです。 AIRPLANE MODEをオンにすると、GPSが使用されているように見え、本当に正確な場所が返されます。このアプリを使用するには、ユーザーが飛行機モードをオンにすることはほとんど期待できないため、私はまだ解決策を探しています。 – Fingel