【问题标题】:Dialing a command prefix on the iPhone在 iPhone 上拨打命令前缀
【发布时间】:2011-02-13 03:46:02
【问题描述】:

我们的应用程序允许用户拨打电话号码。用户希望能够阻止他们的来电显示。

在其他平台上,我们让用户指定自定义拨号前缀。例如,在我的手机提供商上它是#31#。

到目前为止,我已经尝试了两种方法。

第一:

id url = [NSURL URLWithString: @"tel:#31#0000000"]
// produces nil

第二:

id encoder = ["#31#0000000" stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding];
// produces %2331%230000000
id url = [NSURL URLWithString: [NSString stringWithFormat: @"tel:%@", encoded]];
// produces a valid-looking NSURL which doesn't do anything

此时我在想,我只是不允许拨# 和 *,即使是在 Cocoa 触控应用程序中也是如此。 (我知道网络应用不允许这样做。)这是真的,还是我遗漏了一些明显的东西?

【问题讨论】:

  • 我建议使用指定的电话号码在您的通讯录中建立一个联系人,然后以编程方式获取有关该电话号码的信息,看看您是否能找到它的样子。
  • 如果“重复”是指“一年前发布”。 :P 这是在 2010 年 4 月发布的,你说的重复的问题是在 2011 年 1 月发布的。

标签: iphone cocoa-touch url tel


【解决方案1】:

看起来没有办法做到这一点。

为防止用户恶意重定向电话或更改电话或帐户的行为,电话应用程序支持 tel 方案中的大多数(但不是全部)特殊字符。具体来说,如果 URL 包含 * 或 # 字符,电话应用程序不会尝试拨打相应的电话号码。

——Apple URL Scheme Reference Phone Links

【讨论】:

    猜你喜欢
    • 2012-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 2021-02-07
    • 2020-08-26
    相关资源
    最近更新 更多