如何在结束调用后删除CallKit的回调选项UI

Kal*_*494 4 ios swift callkit

在我的应用程序中,我使用CallKit进行来电.应用中没有拨出电话功能.一切都很好但是当接收器或dailer结束呼叫时,它会显示带有回叫选项的CallKit UI.我不想显示回调选项,我该怎么办呢?

我结束通话的代码

func end(call: SpeakerboxCall) {

    let endCallAction = CXEndCallAction(call: call.uuid)
    let transaction = CXTransaction()
    transaction.addAction(endCallAction)

    requestTransaction(transaction, action: "endCall")

}

private func requestTransaction(_ transaction: CXTransaction, action:
    String = "") {

    callController.request(transaction) { error in
        if let error = error {
            print("Error requesting transaction: \(error)")
        } else {
            print("Requested transaction \(action) successfully")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Kal*_*494 5

我已经解决了.我强行退出CallKit,交易没有正确完成.

 AppDelegate.shared.providerDelegate?.provider.reportCall(with: call.uuid, endedAt: nil, reason: CXCallEndedReason.remoteEnded)
Run Code Online (Sandbox Code Playgroud)

我们需要将endsAt设置为nil并将其设置为remoteEnded