我CTCallCenter
在我的项目中使用。现在它已被弃用,我想知道什么是替代品?如何获取语音通话的事件?
问问题
6297 次
1 回答
15
这没有很好的记录,但我在CTCallCenter
公共头文件中发现了这一点:
“替换为
<CallKit/CXCallObserver.h>
”
因此,从 iOS 10 开始,您应该使用CXCallObserver
新CallKit
框架类来检索有关活动呼叫的信息:
CXCallObserver *callObserver = [[CXCallObserver alloc] init];
提供符合CXCallObserverDelegate
协议和队列的对象,您要在其上执行委托回调:
// If queue is nil, then callbacks will be performed on main queue
[callObserver setDelegate:self queue:nil];
// Don't forget to store reference to callObserver, to prevent it from being released
self.callObserver = callObserver;
并在您的委托对象上实现以下方法:
- (void)callObserver:(CXCallObserver *)callObserver callChanged:(CXCall *)call {
if (call.hasConnected) {
// perform necessary actions
}
}
有关更多信息,您可以查看:
- 使用WWDC 2016的 CallKit 会话增强 VoIP 应用程序
- 音箱示例项目
于 2016-10-07T07:07:15.200 回答