嗯,ür第一問題u需要不需要獲取您的當前位置的互聯網連接。
對於第二個問題,如果你能夠獲得你的位置座標(經度,緯度)we will be having some locations as lat,long stored in the application
那麼你可以計算座標並找出它們之間的距離。
從座標
public static float distFrom(float lat1, float lng1, float lat2, float lng2) {
double earthRadius = 6371;
double dLat = Math.toRadians(lat2-lat1);
double dLng = Math.toRadians(lng2-lng1);
double a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) *
Math.sin(dLng/2) * Math.sin(dLng/2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
double dist = earthRadius * c;
return(float)(dist);
}
及其Java實現haversine公式的使用下面的函數計算距離。用它來尋找距離。
我猜GPS需要通過互聯網連接發送和接收數據。如果您有本地存儲的數據(座標),則可以離線計算離線的離線。 – keyser
你想在Android或iPhone – 2012-10-10 11:19:11
由於用戶的手機在他的手機中有一個GPS設備,爲什麼應用程序需要連接到互聯網,因爲GPS應該默認情況下以離線模式確定用戶當前位置。在上面的問題中,我不是指在線地圖(Google或Bing地圖)中顯示用戶當前位置,而只是確定用戶當前的經緯度,long.f用戶當前位置可以在沒有互聯網連接的情況下計算,然後肯定地找到最近的位置(存儲爲拉特,長在電話中)不需要互聯網連接,可以通過等式來確定 – user1659529