2013-11-29 63 views
0

我想測量兩個地方之間的道路距離提供了地點的緯度和經度。我的android應用程序將要離線users.I使用我的認爲谷歌地圖API不能在這種情況下使用。請幫助我的朋友....如何找到在離線兩個地理點之間的道路距離android

+0

在任何時候,你有兩個位置座標在手嗎? – Techfist

+0

不,只有一個位置在我手中,而其他位置共同是用戶當前正在動態檢索的位置。 – shefi

回答

0

請看看這個answer,如何使用谷歌之間的經度和距離地圖在離線應用程序。這是基於osmdroid,也是Google terms of use谷歌地圖。

+0

感謝您的迴應。 – shefi

+0

在osmdroid庫的先決條件中提到它需要我的應用程序中不允許的互聯網許可(這是一個離線應用程序)。我也不想顯示map.i想要在地點之間通過公路計算距離。請指導我更具體到我的要求? – shefi

0

爲了獲得兩個地方之間的經度和緯度值離線模式的基礎上存儲這些值在sqlite文件並在執行應用程序時從中檢索。

要準備一個數據庫列緯度,地方等

你可以問,如果你有任何疑問:)

+0

這兩個地方中,一個地方是用戶當前所在的位置總是不一樣。 – shefi

+0

你有什麼建議可以繼續嗎? – shefi

+0

在離線模式下無法獲取當前位置的緯度和經度。您必須將這些值存儲在sqlite文件中。 –

0

好吧,所以在這裏,你正在離線模式下,你只能依靠這種方法來檢索用戶當前的座標。

  1. 被動提供者: - 這是非常快的,但前提是其他一些應用程序會要求用戶的位置,就你申請前的準確。

  2. GPS提供商:這是緩慢的,通常只適用於開闊地帶,最多可能需要10-20秒,從衛星接收的座標

  3. 您還可以使用網絡的三角測量,從信號發射塔是他們比GPS提供商更快。

基於上述過程中,您可以編寫一個函數,它會首先嚐試從最快的供應商獲取用戶當前的位置,比任務是驗證多大是這個數據,如果不是最近的,那麼你可以訴諸從其他兩種方法平行地檢查用戶位置,首先返回你的座標是你的答案。

一旦你有兩個座標,使用位置clasa API distanceTo找到它們之間的確切距離。

我希望這會幫助你寫出你的邏輯。

+0

感謝您的幫助。使用位置類API可以通過公路之間的距離獲得距離嗎? – shefi