gpt4 book ai didi

ios - 来电时保持 callkit 通话

转载 作者:搜寻专家 更新时间:2023-10-30 22:01:01 29 4
gpt4 key购买 nike

我对 callkit 有疑问(但不是真的)。

我在我的应用程序中实现了 callkit,它运行良好。我可以接到我的应用程序的第二个电话,callkit 为我提供了结束并接受、拒绝或保留并接受的选项。如果我正在进行蜂窝 (gsm) 通话并且在我的应用程序上接到电话,情况也是如此。但是,当我在应用程序通话中(在 callkit 上)并接到蜂窝电话(gsm)时,我只有 2 个选项:拒绝或结束并接受。

知道为什么吗?或者我如何获得所有 3 个选项?

static var providerConfiguration: CXProviderConfiguration {

var providerConfiguration: CXProviderConfiguration
providerConfiguration = CXProviderConfiguration(localizedName: "app name")

providerConfiguration.supportsVideo = false
providerConfiguration.maximumCallsPerCallGroup = 1
providerConfiguration.maximumCallGroups = 3
providerConfiguration.supportedHandleTypes = [.phoneNumber]
return providerConfiguration
}

我已经实现了:

providerDidReset, 
CXStartCallAction,
CXAnswerCallAction,
CXEndCallAction,
CXSetHeldCallAction,
CXSetMutedCallAction,
timedOutPerforming action,
didActivate audioSession,
didDeactivate audioSession.

在我的应用委托(delegate)中,我有检查用户事件的功能。我在所有函数中放置了断点,但在显示传入蜂窝 (gsm) 调用的 View 之前没有调用任何东西。

我用谷歌搜索但找不到解决方案。据我所知,callkit 运行良好。

最佳答案

我为拨出电话而苦苦挣扎。对于拨出电话,请确保在对方接听电话后调用此方法:

[self.provider reportOutgoingCallWithUUID:currentCall.uuid connectedAtDate:[NSDate date]];

如果您不这样做,从 CallKit 的角度来看,调用将卡在“连接中”,我发现其他调用的 native 来电 UI 将不会提供“发送到语音邮件”和“保留”并接受”来电选项,而另一个电话正在“连接”。

今天我为此苦苦挣扎了一会儿,直到我弄明白了那部分。我也在打电话:

 [self.provider reportOutgoingCallWithUUID:currentCall.uuid startedConnectingAtDate:[NSDate date]];

从内部:

- (void)provider:(CXProvider *)provider performStartCallAction:(CXStartCallAction *)action

不确定该部分是否有必要,但我正在这样做,因为那是 Speakerbox 演示所做的。有点,他们在回调中做...我只是立即做。

关于ios - 来电时保持 callkit 通话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51764123/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com