gpt4 book ai didi

android - 单击电话 : link 时抑制 native 对话框

转载 作者:行者123 更新时间:2023-11-30 03:24:20 25 4
gpt4 key购买 nike

我一直在寻找有关在单击电话链接时抑制移动设备上的对话框的方法,但无济于事。

我们需要用我们网站的自定义弹出窗口替换 iPhone 和 Android 上现有的 native 对话框。

我们有 HTML5 供我们使用,但对于一个基本站点,我们不会使用 javascript(对于功率较低的 WAP 手机)。

有没有办法通过我网站上的 HTML 来抑制来自浏览器(safari、chrome、firefox?)的手机原生对话框?

谢谢

最佳答案

如果您的用例允许您避免使用 tel: link 格式,您可以将数字放在其他看起来像链接的地方,然后让您的网页按照您的意愿处理它们。为了避免浏览器自动添加指向它认为是电话号码的号码的链接,请将以下 html 标记添加到文档的 <head> 中。 (来自 Safari Developer Library ):

<meta name="format-detection" content="telephone=no">

这是否足够,或者您的问题是否还有我不理解的内容?

更新

经过进一步说明,似乎期望的结果是在 tel:// 时调用 native 电话拨号器。按下链接,但只是抑制拨号前的用户提示。

根据 RFC 3966: The tel URI for Telephone Numbers , 第 11 节安全注意事项:
“Web 客户端和类似工具不得使用“tel”URI 来放置未经用户明确同意的电话客户。在没有适当用户的情况下自动调用电话确认可能会带来一些风险……”

因此,尽管仍有可能存在抑制警报的参数,例如 &confirmation=false&alert=no ,对于每个移动操作系统,它可能没有记录并且不同。我的猜测是它不存在。

可能的解决方法

根据iOS Developer Library :
“当用户点击网页中的电话链接时,iOS 会显示一条警告,询问用户是否真的想调用电话号码,如果用户接受,iOS 就会开始拨号。当用户打开一个 URL 时在 native 应用程序中使用 tel 方案时,iOS 不会显示警报并启动拨号而不进一步提示用户。但是, native 应用程序可以配置为显示自己的警报。”

因此,如果您的用例允许您将网站嵌入 UIWebView并将其作为 iOS 应用分发,应该可以抑制警报。

根据Android Developer Docs :
[使用拨号器] 要求您的应用程序在您的 list 中请求以下权限:<uses-permission id="android.permission.CALL_PHONE" /> "

再次重申,如果您的用例允许您将网站嵌入 android.webkit.WebView并将其作为 Android 应用分发,似乎也可以抑制警报。

关于android - 单击电话 : link 时抑制 native 对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18524868/

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