我需要在不使用位置权限的情况下获取用户的确切国家/地区位置。
我尝试使用语言环境,但是用户可以手动更改。
let loc = Locale.current
print(loc.regionCode)
现在我正在使用语言环境获取位置,但是用户可以手动更改它。我需要检查用户的确切国家/地区。
答案 0 :(得分:0)
您的应用可以联系一些Web API服务,以获取IP地址的大致位置。由于您的用户可能正在使用国外VPN服务,因此不能完全保证它是设备的正确国家/地区,但这可能是您唯一可以做的事情,而无需询问设备的位置。
这里是example service。我对这项服务的质量一无所知(我是随机选择这个答案的)。那里似乎有很多东西,因此您应该做些家庭作业,这对您的用户和您自己都是最佳的。
您可以采取另一种方法:只需询问用户,并相信他们中的大多数会诚实回答。如果他们的答案在设备的时区中没有意义,则可能怀疑他们的答案是错误的。