2011-08-12 87 views
0

我有這個簡單的疑問。
手機正在獲取位置更新時,我必須顯示進度對話框。
我是否需要在單獨的線程中執行此操作,或者getLastKnownLocation是否已經在單獨的線程中運行。
如果它不能任何人請發表一個小的示例代碼,最有效的方法來做到這一點?
我經歷了android api源代碼,並沒有成功找出工作。does getlastknownlocation是否在單獨的線程中運行?

回答

0

getLastKnownLocation同步運行,它實際上並沒有得到當前位置(這是你可能想要的)。下面是文檔:http://developer.android.com/reference/android/location/LocationManager.html#getLastKnownLocation%28java.lang.String%29

亮點:

返回一個位置指示從給定的提供商處獲得的最後已知位置 修復數據。這可以在沒有 啓動提供程序的情況下完成。請注意,如果設備已關閉並移動到另一個 位置,則該位置可能已過時,例如 。

如果提供者當前被禁用,則返回null。

你可能想什麼東西沿着這一問題的線條更:displaying progress dialog at the start of a gps application

+0

謝謝您的回答。但是,您建議的鏈接每10秒鐘請求位置更新。我只想要一個位置的更新。這就是我使用getLastKnownLocation的原因。有一個更好的方法嗎?通過請求位置更新超過要求,我不必使用大部分用戶的電池。 – Brahadeesh

+1

@Brahadeesh你也可以[requestSingleUpdate](http://developer.android.com/reference/android/location/LocationManager.html#requestSingleUpdate%28java.lang.String,%20android.app.PendingIntent%29)。 – Kiril

+0

requestSingleUpdate是同步還是異步運行? – Brahadeesh

相關問題