如何在 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 邮件应用程序中禁用电话号码链接?的主要内容,如果未能解决你的问题,请参考以下文章
当用户在 iPad 上的 WKWebView 中点击电话号码时如何禁用弹出窗口?