2

現在の場所を指す小さなアプリケーションを Android で作成しています。そのために GPS プロバイダーを使用しましたが、場所によっては GPS プロバイダーを使用してデータを取得できないことがわかりました。

これを手に入れるのを手伝ってくれる人はいますか?

4

2 に答える 2

3

WIFI に接続している場合は、現在地の更新に NETWORK PROVIDER を使用するだけです。それらは高速で十分に正確でもあります。

通常、位置情報の更新がそれほど頻繁に必要とされない場合、位置情報の更新は GPS と NETWORK の両方から同時に要求されます。希望する精度の位置更新を取得するたびに、位置更新のリッスンから登録を解除します。

ただし、位置情報の更新が頻繁に必要な場合は、GPS の呼び出しもバッテリーを大量に消費する可能性があるため、GPS プロバイダーの使用には注意してください。

GPS アップデートは、空の下でのみ有効です。GPS の更新には時間がかかり、バッテリーも消費しますが、より正確です。

ネットワーク更新はより速く、バッテリーの消費が少なくなりますが、比較的精度が低くなります。しかし、WIFI の精度について話している場合、多くのリアルタイム要件を満たすことができるのは 50 または 100 に近くなります。

それはすべてあなたの要件に依存します。

于 2012-04-16T11:10:19.743 に答える
-1

デバイスがモバイルまたはwifi経由で接続されているかどうかを確認するには、次のコードを使用できます。

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

//wifi
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();

次に、このように使用します...

if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING) {
    //wifi
}

詳細については、リンクを参照してください

于 2012-04-16T11:12:02.950 に答える