基本上我需要在应用程序启动,以确定用户的国家和启用或禁用基于他/她的国家在我的应用程序基于位置的功能。我需要在之前的RootViewController的的加载应用程序委托尽可能快地做到这一点。反正在iPhone SDK ??

这样做的
有帮助吗?

解决方案

您是否需要该设备的物理位置,而在应用程序运行的国家名称?

或者你可以凑合着用系统区域设置设备使用,如EN_US或fr_CA?

如果是后者,则可以:

NSLocale *currentUsersLocale = [NSLocale currentLocale];  
NSString *currentLocaleID = [currentUsersLocale localeIdentifier];`

然后currentLocaleID"en_US""fr_CA"或类似。

否则,你就需要使用CoreLocation和某种形式的反向地理编码到您的纬度/经度转换成一个国家名称。

MKReverseGeocoder能做到这一点,但服务条款说你需要与可能不适合你一个谷歌地图那样做结合。仅适用于OS 3.0及以上,搜索的文档的 MKReverseGeocoder 作为详细信息。

我需要这个自己,并最终在PHP做我们的服务器上的地理编码,使用该设备的IP地址。它的基本的,但给了我们足够的细节对我们的需求。

看看这个Web服务: http://ws.geonames.org/ findNearby?LAT = 47.3&LNG = 9 结果 它会返回给定一个纬度/经度对国家和附近的地名的XML文档。

这方法依赖虽然具有有效的数据连接的设备上。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top