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

Posted

技术标签:

【中文标题】我可以在后台观察来电和去电吗?【英文标题】:Can I observe the incoming call and outgoing call in background? 【发布时间】:2016-11-30 10:13:30 【问题描述】:

当我的应用程序处于前台时,它需要轻松检测呼叫事件,例如呼叫连接、呼叫断开连接,但当我的应用程序进入后台时,它不会检测到任何呼叫事件。

那么如何在后台检测来电去电等通话事件? 我正在使用ios 10XCode 8 开发CallKit 框架。我发现核心电话框架在 iOS 10 中已被弃用。

我正在使用CXCallObserverDelegate 模式来观察通话。

我想计算通话过程中来电和去电的通话时长。

【问题讨论】:

你找到答案了吗? 你好 saurabh 你在吗? 我们检测到呼叫事件,例如来电、在后台拨出电话,但在第一次 voip push 时杀死应用程序后,...呼叫套件屏幕出现,但我的端口 sip 未连接 ..请帮助我如何杀死应用程序后端口 sip 始终连接 @Deepesh 先生您好,抱歉回复晚了..我仍在寻找呼叫事件的解决方案,但是我们如何在后台观察呼叫事件? @Deepesh 如果您找到解决方案,请帮助我。 【参考方案1】:

在搜索了这个问题后,我最终得到了这个我认为可能会有所帮助的答案

是的,您可以检测到呼叫,但前提是您的应用在前台运行。 为此,您可以使用Core Telephony Framework。

如果您的应用属于任何后台运行类别(VOIP、音频、位置跟踪或附件),您也许可以使用 CTCallCenter 在后台。但请注意,如果您将后台运行模式用于不适合的用途,Apple 将拒绝您的应用。

CTCallCenter 将允许您检测任何已启动或正在进行的呼叫。

但是,您将无法检测到有关呼叫的任何详细信息,识别呼叫的CTCall 只会告诉您此状态。 CTCallcallID 只会为您提供呼叫的唯一标识符,而不是被呼叫的号码。

original question

【讨论】:

以上是关于我可以在后台观察来电和去电吗?的主要内容,如果未能解决你的问题,请参考以下文章

在 android API29+ 中检测来电和去电

如何注销来电和去电接收者?

无法在 Android 中录制来电和去电的音频

无论如何要为Android中的来电和去电制作我的自定义用户界面吗?

Android 2.1+ 暂停来电/去电,完成后恢复

打开应用程序 来电或去电断开后