在我开始测试“不允许”用例之前,我使用位置服务的 Web 应用程序运行良好。现在 iPhone 拒绝允许定位服务,即使我回答“确定”到“Safari”想使用您当前的位置。
重现... 在 iOS 5.1 上使用 iPhone:
- 加载进行定位服务调用的网页(如http://smithsrus.com/geo.html)
- 出现用户权限提示时回答“不允许”。
- 重新加载页面并再回答“不允许”2 次。
- 重新加载页面并在没有提示的情况下查看“用户被拒绝”。
- 转到“设置->常规->重置->重置位置警告”,然后点击“重置警告”。
- 返回 Safari,重新加载页面,现在看到用户权限提示。
- 即使您回答“OK”,网页仍然会被拒绝。
我杀死并重新启动 Safari,删除所有网站数据,打开和关闭定位服务,甚至重新启动,即使我说我想要,Safari 仍然拒绝实际允许定位服务。
完成这些步骤后,该 Web 域就不再适用于位置服务了。我用完了要测试的域
我搜索了许多 StackOverflow、Apple Developer 和其他网站的答案。但这对我来说确实像是一个错误。用“允许”回答提示但被拒绝一定是一个错误。回答“允许”后,位置服务图标会短暂出现在屏幕顶部,但随后消失,在“位置服务”设置中,Safari 会出现“开启”和旁边的灰色图标。
在尝试了重置位置警告、打开和关闭位置服务以及关闭并重新启动浏览器的组合之后,我确实设法得到了一个新错误:
“操作无法完成。(kCLErrorDomain 错误 1。)”听起来有问题。
我宁愿这是我正在做的愚蠢的事情,有人可以告诉我吗?