gpt4 book ai didi

ios - 为什么我只能反转中国境内的地理编码位置?

转载 作者:可可西里 更新时间:2023-11-01 06:14:24 26 4
gpt4 key购买 nike

我使用 Apple 的 CLGeocoder,当我检索地标的地址字典时,它对于中国境内的位置是预期的,但对于其他国家/地区的请求是空的。

CLGeocoder 不是应该在全局范围内工作吗?

这是我在打印 addressDictionary 时得到的结果:

[FormattedAddressLines: (
""
), CountryCode: ]

我尝试将我的设备设置为英语,因为我知道它会更改 addressDictionary 的内容,但没有成功。

最佳答案

执行一些测试后,Geocoder 服务有两种类型的设置:

  1. Autonavi (amap.com) 中国大陆用户
  2. Apple Map 适用于世界其他地区(我没有尝试过所有国家/地区)

正如您所解释的,高德服务无法对中国大陆以外的位置使用地理编码。打印出 [CLPlacemark]

即可看到这两个服务

我们可以看到不同的version_domain:

对于中国:

"version_domain" = (
autonavi,
revgeo,
cn );

中国(日本)以外:

"version_domain" = (
apple,
revgeo,
JP );

怎么办?

好吧,即使有时 Geocode 可能有效,我们也不能依赖它。我们也不能依赖谷歌,所以你可以看看诺基亚 Here Map。否则你应该改变你的应用程序与中国用户互动的方式。也许您可以只为中文 AppStore 发布特定应用。

如何在开发过程中更改 Geocoder?

在我的情况下,只要我连接到中国电话运营商(例如:中国移动), map 就会切换到高德。使用 Wifi 也会产生同样的效果。

我所做的是使用飞行模式,然后连接到中国境外的 VPN,最后我终止并重启我的应用。

您需要在模拟器上模拟位置,然后在您的 Mac 上使用 VPN。

结论

中国并没有让开发者的事情变得容易,但我相信总有一个解决方案。

关于ios - 为什么我只能反转中国境内的地理编码位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29642922/

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