【问题标题】:iOS Private API Method for Placing a Call Without Displaying the MobilePhone App?iOS 私有 API 方法在不显示手机应用的情况下拨打电话?
【发布时间】:2015-03-15 16:46:40
【问题描述】:

我知道我可以使用 CoreTelephony 的 CTCallDialWithID 拨打电话。我也知道我可以挂断 CTCallDisconnect。我想知道如何在不显示手机应用程序的情况下拨打电话然后挂断电话。我怀疑它可以做到,但我真的在这个问题上捉襟见肘,因为我在 CoreTelephony 或 MobilePhone 应用程序的标题中都没有看到任何明显的东西。

Creker 让我相信去年的这个未答复的duplicate 是可能的,但是我在这个主题上找不到任何类似的帮助,所以我求助于你。我目前的目标是 iOS 8.1,但是为任何 iOS SDK 完成它的代码将对我有很大帮助。

谢谢!

【问题讨论】:

  • 在 iOS 8 上,当显示电话呼叫时,您实际上看不到 MobilePhone 应用程序 - 实际上是 InCallService.app。这是我对 iOS 7 问题的回答 stackoverflow.com/questions/22729003/… 我确实将它移植到了 iOS 8 上,但现在不想发布它。许多东西可以直接从 iOS 7 实现中获取,但需要对其进行调整才能在 iOS 8 上运行。
  • 你真是太棒了。你知道吗?除非您想保留指向适当答案的链接,否则我将删除此问题。无论如何,现在被标记为重复。
  • 无论如何我都会将其标记为重复。您可以删除它或等待它作为副本关闭,从而保留答案的链接。

标签: ios iphone jailbreak iphone-privateapi


【解决方案1】:

CTCall

不使用手机拨打电话,可以使用CTCallDial功能。

CFStringRef number = CFSTR("15555555555");

CTCallRef call = CTCallDial(number);

/* Hold call */
CTCallHold(call);

/* Resume call */
CTCallResume(call);

/* End call */
CTCallDisconnect(call);

注意:传递给 CTCallDial 的电话号码必须经过规范化。比如+1(555)555-5555归一化后会变成15555555555。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多