大家好,
在 Facebook 应用程序中,当添加新帖子时,应用程序会显示周围区域名称。
这种分享地点的方式很酷,因为它是自动的,用户不需要像 Instagram 应用程序那样从场地名称列表中进行选择。
什么是获得与 Facebook 应用程序相同结果的快速方法?
我发现 iOS 有一个内置的 api CLGeocoder
,这比 Web API 使用起来更方便:
- (void)reverseGeocodeLocation:(CLLocation *)location completionHandler:(CLGeocodeCompletionHandler)completionHandler;
这会为您返回CLPlacemark
地点和区域。
这是所有地理定位解决方案的详细比较 - Foursquare、Facebook、Google 等 - http://crschmidt.net/blog/archives/463/working-with-place-apis-aka-how-i-spent-my-春假/
但是,如果您打算将 Facebook Graph API 用于“地点”,这实际上就是您正在寻找的东西 - https://developers.facebook.com/docs/tutorials/ios-sdk-tutorial/show-nearby-places/
具体步骤 3 (https://developers.facebook.com/docs/tutorials/ios-sdk-tutorial/show-nearby-places/#step3)
现在您有了当前位置,将它与 FBPlacePickerViewController 对象一起使用,以在用户点击“你在哪里?”菜单选项时显示位置选择器。
我之前通过 google maps api 等服务使用过类似的东西。
https://developers.google.com/maps/
您可以将它们传递给经纬度并获取各种信息。
不过,我不确定这是否是一项付费服务。这不是我上次使用它的时候,但我认为它改变了。
可能还有其他类似的服务可用。
来自 Google maps api 的更具体的页面...
https://developers.google.com/maps/documentation/geocoding/#ReverseGeocoding