【问题标题】:Come Back to App after Phone Call iOS 7 [duplicate]打电话后返回应用程序iOS 7 [重复]
【发布时间】:2013-12-22 17:20:36
【问题描述】:

我使用了以下代码:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@", self.phoneNumber]]];

打电话后,拨号器转到电话应用程序,而不是返回我的应用程序。

有什么想法吗?

iOS 7. Xcode 5.

【问题讨论】:

  • 不确定,但你试过telprompt://而不是tel://
  • 请查看相关下列出的问题。这个问题已经被问过好几次了。

标签: ios objective-c ios7


【解决方案1】:

您可以进行相同类型的调用,但将 tel:// 替换为 telprompt://,如下所示:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"telprompt://%@", self.phoneNumber]]];

在您打完电话后,您将返回应用程序。这将适用于大多数(如果不是所有)iOS 版本。

编辑 - 2015 年 7 月 14 日

我在下面的 cmets 中获悉,Apple 实际上不支持使用 telprompt://,因此他们可以决定随时更改此设置,这可能会影响您的应用。所以我的建议是将这个调用包装在canOpenURL: 中,看看你是否可以事先打开 URL 并在不能处理的情况下处理它。

我实际上可能会在应用程序加载时检查它并将其设置为一个全局变量,你可以在构建你的 UI 时检查它,如果你不能这样做,可能根本不提供该功能,这会创建更好的用户体验。

非常感谢NicolasMiari 指出错误并提供iOS: return to app when the call fails 的链接

【讨论】:

  • 有什么办法可以禁用弹出的警报?
  • 不要相信,因为那时你实际上已经离开了应用程序。
  • @Downvoter 请详细说明拒绝投票的原因,因为这是正确的。
  • 但是需要点击调用才能继续。
  • @NicolasMiari 我已根据此对话更新了我的答案,并感谢您指出telprompt:// 的错误
猜你喜欢
  • 1970-01-01
  • 2014-10-29
  • 2014-03-27
  • 2011-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-01
  • 1970-01-01
相关资源
最近更新 更多