嗯,ü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