当我的应用程序在前台时,它需要轻松检测呼叫事件,如呼叫连接,呼叫断开,但当我的应用程序进入后台时,它不会检测到任何呼叫事件。
那么如何在后台检测呼叫事件,如来电和拨出电话?
我正在使用df.groupBy("fruit").agg(collect_list("name"))
和CallKit
处理iOS 10
框架。我发现iOS 10中已经弃用了核心电话框架。
我正在使用XCode 8
模式来观察呼叫。
我想计算呼叫期间来电和去电的通话时间。
答案 0 :(得分:1)
在搜索了这个问题之后,我最终得到了这个答案,我认为可能有所帮助
是的,您可以检测到呼叫,但前提是您的应用在前台运行。 为此,您可以使用Core Telephony Framework。
如果您的应用程序属于任何后台运行类别(VOIP,音频,位置跟踪或附件),您可以使用
CTCallCenter
在后台。但请注意,如果您使用后台运行模式,那么Apple将拒绝您的应用程序。
CTCallCenter
将允许您检测已启动或正在进行的任何呼叫。
但是,您将无法检测到有关该呼叫的任何详细信息,CTCall
标识该呼叫只会告诉您此状态。 callID
的CTCall
只会为您提供呼叫的唯一标识符,但不会为您调用该号码。