检测ios中的通话事件

Detecting the call events in ios(检测ios中的通话事件)

本文介绍了检测ios中的通话事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是 ios 新手.我想知道是否有任何方法可以检测来电、去电等呼叫事件,即使我的应用程序不在前台也是如此.如果是,那么我可以阅读有关该呼叫的详细信息,例如持续时间,是否未接,已拨或已接.提前致谢.

I am new to ios. I was wondering if there is any way to detect the call events like incoming call, outgoing call even if my app is not in foreground. And if yes it is possible then can i read the details about that call like duration, whether it is missed, dialed or recieved. Thanks in advance.

推荐答案

是的,您可以检测到呼叫.但前提是您的应用程序在前台运行.为此,您可以使用核心电话框架.

Yes you can detect a Call. but only if your app is running in the foreground. For this you can use the Core Telephony Framework.

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

If your app will fall in any of the background running categories (VOIP, AUDIO, Location tracking or accessory ) you might be able to use the CTCallCenter in the background. But be aware that Apple will reject you app if you miss use the background running mode for something it was not meant for.

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

The CTCallCenter will allow you to detect any calls that are started or already in progress.

但是,您将无法检测到有关呼叫的任何详细信息,CTCall 识别调用只会告诉你这个状态./c_ref/CTCall">CTCall 只会为您提供呼叫的唯一标识符,而不是被呼叫的号码.

However you will not be able to detect any detail about the call, the CTCall identifying the call will only tell you this state. The callID of CTCall will just give you an unique identifier for the call but not the number being called.

这篇关于检测ios中的通话事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:检测ios中的通话事件

基础教程推荐