尝试使用iOS 10.3上的tel://方案拨打电话号码时提示

时间:2017-03-30 15:09:41

标签: ios openurl ios10.3

更新到10.3后,我的应用程序使用openURL:options:completionHandler:方法按下我的应用程序中的呼叫按钮后,不再自动拨打电话号码。

相反,每次都会出现提示以确认用户的意图。

根据Apple文档:

  

tel URL方案用于在iOS设备上启动Phone应用程序并启动拨打指定的电话号码。当用户点击网页中的电话链接时,iOS会显示一条警告,询问用户是否确实要拨打电话号码并在用户接受时启动拨号。当用户在本机应用程序中打开带有tel方案的URL时,iOS不会显示警报并启动拨号而不会进一步提示用户。但是,可以将本机应用程序配置为显示其自己的警报。

根据此信息,提示会显示网页,但不会显示在原生iOS应用中。

这可能是10.3中的错误吗?或者是否需要使用新功能或将新属性包含在我不知道的info.plist中?

感谢。

2 个答案:

答案 0 :(得分:16)

这是10.3发行说明中的​​已知问题。

https://developer.apple.com/library/content/releasenotes/General/RN-iOSSDK-10.3/

  

<强>的OpenURL

     

当第三方应用程序在tel://上调用openURL:   facetime://或facetime-audio:// URL,iOS会显示提示和   在拨号之前需要用户确认。

它也列在10.3更新的Security content中,所以我假设这是一个新的功能。

  

iOS中存在一个问题,允许在没有提示的情况下进行呼叫。这个   通过提示用户确认呼叫启动来解决问题。

答案 1 :(得分:2)

这不是第一次,苹果开发者已经重新启动了针对网址方案的此警报?我记得他们做过这种激活,即使是在其他几个早期的更新中,他们还在下一次操作系统更新中回滚。

在10.3.1的情况下,我读到一条消息,在美国有很多911个被欺诈拨打的电话。 https://9to5mac.com/2017/03/06/911-ios-exploit/

在我看来,警告限制已被合并以阻止错误的911拨号。

我有信心,Apple不能经常对API&Schemes实施这种任意改变,这在很大程度上影响了用户的体验。

过去8年,我在商店里有一个快速拨号应用程序。 https://itunes.apple.com/us/app/speed-dial/id306569903?ls=1&mt=8# 在过去的几周里,如此多的用户抱怨这种新的限制再次触摸快速拨号。

目前,我们必须等到Apple在下次更新中修复此已知问题。因为,有100个生产力应用程序,它依赖于URL方案而没有警报方案。

相关问题