2012-01-29 9 views
3

私が働いているアプリケーションのImは、gpsを使用し、時にはonResumeで使用する場所が非常に古い、時には非常に遠く離れている場合もあります。自分のロケーションマネージャで時刻を0に設定しても更新されません。 Iveは、粗いものから細かいものを使って新しいリスナーを追加しようとしましたが、一方から他方に切り替えることはできましたが、私はまだそれを信頼できるものにしません。 onResumeメソッドで新しい場所の更新を強制する最も信頼性の高い方法を教えてください。私はもはやlastLocationKnownに頼る必要がなくなりました。私の問題です。Android - onResume()の新しい場所を取得する最善の方法

編集:私が尋ねるべきことは、どのようにして整然と更新された場所を得るかということです。私に問題を与えているlastKnownとしてのあなたの位置だけを設定できるようです。

答えて

1

私は同様の問題があり、onProviderEnabled()がすぐにonResume()と呼ばれていないことに気付きました。私はonPause()でリスナーの登録を解除しないで、onDestroy()に登録を解除しました。ここで http://developer.android.com/reference/android/location/LocationListener.html

私の元のスタックオーバーフローの質問へのリンクです:ここで

は、関連するドキュメントへのリンクがある
Why isn't Android's onProviderEnabled() method being called?

は、この情報がお役に立てば幸いです。 Mel

+0

私はリピーターをonPauseメソッドで登録解除するように設定して同じことを試し続けました。アプリを再び起動するときにログキャットで見ることができるので、私の髪を引き出していましたonResumeで起動しますが、決して新しい場所を返すことはありません。私は、すべてをリセットするためにonCreateメソッドを起動する方法を見つけ出すつもりだと考え始めました。病気はいくつかのものを移動し、onDestroyのすべての登録を取り消し、私がそれを働かせたらポストバックします。 –

+0

私は少し余分なクリーンアップをしなければならなかったのは、ロケーションがそれほど古くても、新しい粗い位置を使用し、精度が上がったので他のものに切り替えることを確認したが、私はunregisterメソッド私のメインクラスのondestroyで、今更新がちょうど来るように見える....余分な助けをいただきありがとうございます:) –