我正在制作一个基于谷歌地图的应用程序。我正在测量两个地方之间的距离。所以我试图通过预定义的方法“getDistanceFrom”找到两个地方坐标之间的距离,并尝试使用googleDirectionAPi。 如果我使用预定义方法我没有得到正确的距离。 如果我使用googleDirectionApi有时我没有得到回应。
所以请建议我解决方案,我可以找到api的每个命中的响应,并能够在两个地方之间获得距离?
答案 0 :(得分:1)
您可以使用CoreLocation
轻松获取两个位置之间的距离。
CLLocation
的文档显示了这一点...... https://developer.apple.com/documentation/corelocation/cllocation#
您可以创建CLLocation
之类的...
CLLocation* location1 = [[CLLocation alloc] initWithLatitude:lat1 longitude:long1]
一旦你有两个位置,就可以找到距离......
CLLocationDistance distance = [location1 distanceFromLocation: location2];
请注意,文档显示在iOS3.2(大约8年前)中已弃用getDistanceFrom
,所以不要使用它。
(原谅语法中的任何错误,自从我编写任何Objective-C以来已经过了几年):D
答案 1 :(得分:0)
您需要使用这些坐标使用以下代码行获取相应坐标的CLLocations
CLLocation *location1 = [[CLLocation alloc] initWithLatitude:lat1 longitude:long1];
CLLocation *location2 = [[CLLocation alloc] initWithLatitude:lat2 longitude:long2];
NSLog(@"Distance i meters: %f", [location1 distanceFromLocation:location2]);
答案 2 :(得分:-1)
您需要发出HTTP请求,调用下面的URL,它将返回两点之间的距离。
要获取API密钥,请转到Google开发者控制台。