如何以编程方式检测到该通话在iOS中处于保持状态?

问题描述:

是否可以在iOS中获取有关电话呼叫保留的任何事件或通知。 CTCallCenter只提供了以下状态:如何以编程方式检测到该通话在iOS中处于保持状态?

CTCallStateDialing 
CTCallStateIncoming 
CTCallStateConnected 
CTCallStateDisconnected 

我们可以使用CallKit框架来获取呼叫保持事件。

我们需要符合CXCallObserver代表

[_callObserver setDelegate:self queue:nil]; 

其中_callObserver是我CXCallObserver类的实例

- (void)callObserver:(CXCallObserver *)callObserver callChanged:(CXCall *)call { 
    if (call.isOnHold == true) { 
     NSLog(@"Call is on hold"); 
     } 
}