1
locationManager.requestLocationUpdates(
  LocationManager.GPS_PROVIDER,30000,100, new GeoUpdateHandler() 
);

マップは30秒の定期的な間隔の後に更新されます。

同じ位置に2分以上いると、地図が4回以上更新されます。私はそれが起こらないようにしたい。

誰かが私に時間をnullとして提供することを提案できますか?

4

2 に答える 2

2

のSDKドキュメントには、およびパラメータを使用して場所の更新頻度を調整するLocationManager.requestLocationUpdates()方法に関する回答があります。minTimeminDistance

LocationManagerSDKドキュメント

通知の頻度は、minTimeパラメーターとminDistanceパラメーターを使用して制御できます。minTimeが0より大きい場合、LocationManagerは、電力を節約するために、ロケーションの更新の間にminTimeミリ秒の間休止する可能性があります。minDistanceが0より大きい場合、デバイスがminDistanceメーターで移動した場合にのみ、位置情報がブロードキャストされます。通知をできるだけ頻繁に取得するには、両方のパラメーターを0に設定します。

基本的に、minTimeを30000に設定したため、30秒の更新を取得します。この値を0に設定し、minDistanceの値を100より大きくして、ユーザーが物理的にかなりの距離を移動したときにより類似した位置の更新を取得することを検討できます。 。

お役に立てば幸いです。

于 2011-06-21T21:50:17.757 に答える
1

最小時間と最小距離の値はそれを防ぐためにあります。

サンプルコードの場合、ユーザーが前回の更新から100メートル以上移動しない限り、そのイベントは発生しないはずです。minDistanceそれがプロパティの内容です。

http://developer.android.com/reference/android/location/LocationManager.html

于 2011-06-21T21:51:40.263 に答える