iOS 7,用于断开呼叫的私有 API CTCallDisconnect 不起作用

Posted

技术标签:

【中文标题】iOS 7,用于断开呼叫的私有 API CTCallDisconnect 不起作用【英文标题】:iOS 7, private API to disconnect calls CTCallDisconnect does not work 【发布时间】:2013-10-06 17:59:39 【问题描述】:

我一直在使用私有 API(供个人使用,不在 App Store 上)使用 *** 帖子 How can I use private APIs to block incoming calls in an ios application? 中概述的步骤阻止来电

我最近升级到 iOS 7,发现它不再工作了。收到来电时,我仍然会收到“kCTCallIdentificationChangeNotification”通知,但是当我调用 CTCallDisconnect 函数时,它什么也不做。

当我在 CoreTelephony 库上执行“nm”命令时,它仍然列出 CTCallDisconnect 函数,因此它看起来仍然存在于 iOS 7 中。

有没有人在 iOS 7 中拒绝来电?

谢谢!

【问题讨论】:

【参考方案1】:

我认为没有越狱你就无法做到这一点。我检查了 SpringBoard 的权利,发现 com.apple.coretelephony.Calls.allow。看起来这就是为什么私有 CoreTelephony API 不能在 iOS 7 上运行的原因。SpringBoard 和 Preferences 应用程序中有许多新的权利。仅 CoreTelephony 就有四种权利保护不同的私有 API。

【讨论】:

有趣。在哪里可以找到权利? iOS 7 模拟器有几个默认应用程序,包括 SpringBoard 和 Preferences。如果您使用 TextEdit 打开他们的二进制文件,您将找到包含该应用程序签名的所有权利的属性列表。只需搜索<key> 我找到了权利“com.apple.coretelephony.Calls.allow”但没有看到它。它在哪里?,帮帮我

以上是关于iOS 7,用于断开呼叫的私有 API CTCallDisconnect 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

私有 api CTGetSignalStrength() 不适用于 Xcode 7.3

Sinch iOS API 支持 CallKit 框架?

使用 CallKit 显示用于拨出 VoIP 呼叫的 iOS 本机呼叫 UI

用于呼叫的 iOS 原生 iPhone 按钮

如何从 iOS 私有 api 二进制文件中获取标头和函数?如何对应用程序进行逆向工程?

我可以在后台观察来电和去电吗?