0

Androidアプリ内にサービスがあり、10分ごとに位置情報更新をサーバーに送信する必要があります。私はそのために休憩所に電話しました。場所が変更された場合にのみ、10 分ごとにサーバーに場所の更新を提供します。場所の変更がないときに、最後の既知の場所の更新をサーバーに送信したいと考えています。誰かが私にこれを行う方法を提案できますか、または任意の例が有益です..事前に感謝します

4

4 に答える 4

0

場所が変わるたびに、Long と Lat と呼ばれる double に保存します。これらの変数は、必要なときにいつでもチェックできます。

于 2013-09-13T12:11:49.887 に答える
0

私の提案は、sharedpreferences を使用することです。

場所をサーバーに送信する前に、共有設定に保存してください。最後の場所にサーバーまたは LocationManager を使用するのではなく、保存されている共有設定から直接取得できます。

于 2013-09-13T12:43:11.247 に答える
0

あなたはgetLastKnownLocation方法を持っています:

Criteria criteria = new Criteria();

String provider = mLocationManager.getBestProvider(criteria, false);
Location location = mLocationManager.getLastKnownLocation(provider);

ところで、Criteria敵の例を設定できます:

criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setCostAllowed(false);

そして、最後の既知の場所を でバインドする場合は、次onLocationChangedのように呼び出します。

this.onLocationChanged(location); 
于 2013-09-13T12:06:34.053 に答える
0

このためには、サービスを使用する必要があります。

バックグラウンドで場所を取得し、サービスでハンドラーを使用して10分ごとにスレッドを実行し、以前の場所の値を保持する1つの変数を維持することをより適切に確認し続けます。場所を取得したときはいつでもその値を確認してください。

場所を取得するには、この例を見てください

http://javapapers.com/android/get-current-location-in-android/

代わりにサービスを使用する必要があります。

于 2013-09-13T12:08:42.900 に答える