如何在 iPhone 邮件应用程序中禁用电话号码链接?

Posted

技术标签:

【中文标题】如何在 iPhone 邮件应用程序中禁用电话号码链接?【英文标题】:How do you disable phone number linking in iPhone Mail app? 【发布时间】:2011-11-20 15:32:21 【问题描述】:

我的公司正在发送数字电子邮件收据,并且遇到了 iPhone Mail 检测数字数据并将其自动链接为电话号码的问题。我在 iPhone 上的 Mobil Safari 中看到了应该解决问题的元标记,但这个技巧似乎不适用于 Mail。

有人知道怎么做吗?操作数字本身以插入隐藏字符是行不通的(以防止 Mail 检测到它),因为它是动态填充的。

谢谢!

【问题讨论】:

【参考方案1】:

我遇到了完全相同的问题 - 电子邮件收据中的 UPC 将被自动检测为电话号码,并使电子邮件看起来很糟糕,更不用说与所有链接混淆了。我发现了一个对我有用的技巧:我编写了一个函数,该函数将获取字符串数据并每隔 3 个字符嵌入零宽度非连接字符 (‌)(我随机选择了 3 个,您可能会执行更少的插入操作但仍然会中断但我没有测试过)。我的 c# 函数如下所示:

private string iPhoneDisruptAutoLinks(string val)

    StringBuilder newVal = new StringBuilder();
    int count = 0;
    foreach (char c in val.ToCharArray())
    
        count++;
        if (count == 3)
        
            count = 0;
            newVal.AppendFormat("‌0", c);
        
        else
        
            newVal.Append(c);
        
    

    return newVal.ToString();

因此 1234567890 的 UPC 将呈现为:

123‌456‌789‌0

我在 iPhone 4/4S 上的测试效果很好。我没有测试过 iPhone 3 或 iPad。

这种方法似乎也破坏了 iPhone 4/4S 地址检测(这对我们来说是另一个烦恼)。

希望这会有所帮助。

【讨论】:

谢谢 Ookep;我将对此进行测试【参考方案2】:
<meta name="format-detection" content="telephone=no" />

这就是你要找的吗?

它记录在Apple URL Scheme Reference。

【讨论】:

不幸的是,它似乎只能在 Mobile Safari 应用程序中工作,而不能在邮件应用程序中工作。

以上是关于如何在 iPhone 邮件应用程序中禁用电话号码链接?的主要内容,如果未能解决你的问题,请参考以下文章

Iphone、电话间隙、儿童浏览器和电子邮件功能

当用户在 iPad 上的 WKWebView 中点击电话号码时如何禁用弹出窗口?

禁用iPhone手机浏览器上给电话号码自动加上的link样式

html 禁用iphone电话链接

html 禁用iphone电话链接

如何在 iPhone 上禁用文本输入的拼写检查器