gpt4 book ai didi

ios - 在 iOS 中获取设备位置(仅限国家/地区)

转载 作者:IT王子 更新时间:2023-10-29 07:34:40 25 4
gpt4 key购买 nike

我需要获取 iOS 设备的国家/地区位置。

我一直在尝试将 CoreLocation 与 MKReverseGeocoder 结合使用。然而,这似乎经常返回错误。我只需要乡村,不需要街道等。

如何以更稳定的方式做到这一点?

最佳答案

NSString *countryCode = [[NSLocale currentLocale] objectForKey: NSLocaleCountryCode];

将为您提供一个标识符,例如"US"(美国)、"ES"(西类牙)等


Swift 3 中:

let countryCode = NSLocale.current.regionCode

Swift 2.2 中:

let countryCode = NSLocale.currentLocale().objectForKey(NSLocaleCountryCode) as String

与基于 CLLocationManager 的解决方案相比,这种方法有利有弊。主要的缺点是,如果用户以不同的方式配置它,它不能保证这是设备的物理位置。然而,这也可以被视为专业人士,因为它反而显示了用户在心理/文化上与哪个国家/地区保持一致 - 因此,如果例如我去国外度假,然后语言环境仍然设置为我的祖国。然而,一个非常重要的优点是这个 API 不像 CLLocationManager 那样需要用户许可。因此,如果您还没有获得使用用户位置的许可,并且您不能真正证明在用户面前抛出弹出对话框(或者他们已经拒绝了该弹出窗口并且您需要后备)那么这可能就是您的 API想用。这方面的一些典型用例可能是个性化(例如文化相关内容、默认格式等)和分析。

关于ios - 在 iOS 中获取设备位置(仅限国家/地区),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8534496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com