当前位置: 首页 > 面试题库 >

不建议使用CTCallCenter。有什么选择?

屈畅
2023-03-14
问题内容

CTCallCenter在我的项目中使用。现在已弃用,我想知道什么是替代品?如何获取语音通话事件?


问题答案:

这没有很好的文档记录,但是我在CTCallCenter公共头文件中找到了此提及:

“替换为<CallKit/CXCallObserver.h>

因此,从iOS
10开始,您应该使用CXCallObserverCallKit框架类来检索有关活动调用的信息:

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应用
  • 音箱示例项目


 类似资料:
  • 问题内容: 我最近一直在使用Hibernate 3.5和Spring 3进行一些工作,但是我对Hibernate还是比较陌生,并认为Spring中的类使将Hibernate与我的域类一起使用变得容易且容易。 但是,在搜索一个不相关的问题时,我看到有人提到,这不是使用Spring和Hibernate的最佳方法。任何人都可以阐明以下几点: 为什么不推荐? 整合Hibernate和Spring的最佳方法

  • 问题内容: Java文档似乎并未提及有关的弃用的任何内容,但我一直很早就听说过它的弃用情况。是因为它具有错误/错误而被弃用,还是整体上更好使用? 我有一些使用的代码,我想知道我是否应该认真考虑将其重构为使用,还是弃用纯粹是为了方便而我的代码是安全的。 问题答案: 从javadoc中获取StringTokenizer: 是旧类,出于兼容性原因保留,尽管在新代码中不鼓励使用它。建议任何寻求此功能的人改

  • 问题内容: 我找不到任何解释为什么Apache Lang3 v3.7中不推荐使用StringEscapeUtils。 https://commons.apache.org/proper/commons- lang/apidocs/org/apache/commons/lang3/StringEscapeUtils.html 我们现在应该使用什么来进行HTML转义/转义 问题答案: 班级已从包裹中移

  • 问题内容: 为什么不推荐使用? 问题答案: 在javadoc中说为什么。被设计为低负载并发的一种简单解决方案,但它甚至无法解决: 请注意,SingleThreadModel不能解决所有线程安全问题。例如,即使使用SingleThreadModel servlet,会话属性和静态变量仍然可以同时由多个线程上的多个请求访问。建议开发人员采取其他方法解决这些问题,而不要实现此接口,例如,避免使用实例变量

  • 问题内容: 我已经继承了代码 读为“ HttpClientBuilder的文档似乎很稀疏,只是说: 但是,如果我用该方法替换仍然出现。 如何使用不推荐使用的方法? 问题答案: 不用创建的新实例,而是使用Builder。你会得到一个。 例如用法: 而不是使用,而是使用方法。

  • 问题内容: 我从没想过,只有我使用了返回一个字符数组的方法,并且看到该方法已被 弃用 。但是现在我想,为什么 不赞成使用 此方法? Java文档说明: 不推荐使用 。 从Java 2 Platform v1.2开始,由取代。 获取由组件表示的文本的一部分。如果length为0,则返回一个空字符串。 出于安全原因,不建议使用此方法。请改用该方法。 但是那些 安全原因是 什么?有什么想法吗? 先感谢您