用callkit接电话后如何打开in Call UI

How do you open the in Call UI after answering a call with callkit

我正在尝试将 callkit 与我的 voip 应用程序集成。此时 CallKit 显示来电,但只要我按下接听键,它就会返回到我的应用程序的显示主屏幕。我希望在按下接听键时显示 CallKit 的通话 UI。

func provider( _ provider: CXProvider, perform action: CXAnswerCallAction) {
    XCPjsua.shared()?.handleIncomingCall();
//    confifureAudioSession()
    action.fulfill()
}

XCPjsua.shared()?.handleIncomingCall(); 函数中,我只是接通了电话。

只要您接听,CallKit UI 仅在 phone 被锁定时才会显示。如果 phone 已解锁,您将被重定向到您的应用,因此您有责任实施持续通话 UI。

CallKit 提供更好的系统集成和更好的 VoIP 应用可见性,但它们限制了呼叫屏幕的使用。您必须自己提供电话 UI。

在您的 VoIP 应用程序中使用 CallKit 的主要目的是提高应用程序被终止和 phone 被锁定时的可用性。通过使用 CallKit,系统将您的 VoIP 应用程序的共享音频会话提升为最高优先级,以改善用户体验。 CallKit 还负责改进您与系统服务的集成,例如免提蓝牙集成、汽车播放、Siri 等

通话界面好像在后台应用的应用轮播中,可以手动切换