我使用CallKit,在运行时拨出呼叫我也调用此函数
private func startCall(handle: String, video: Bool = false, uuid: UUID) {
let handle = CXHandle(type: .phoneNumber, value: handle)
let startCallAction = CXStartCallAction(call: uuid, handle: handle)
startCallAction.isVideo = video
let transaction = CXTransaction()
transaction.addAction(startCallAction)
requestTransaction(transaction)
}
private func requestTransaction(_ transaction: CXTransaction, completion: ((_ error: Error?) -> Void)? = nil) {
callController.request(transaction) { error in
if let error = error {
debugPrint("Error requesting transaction", error.localizedDescription, transaction.actions)
} else {
debugPrint("Requested transaction successfully")
}
completion?(error)
}
}
但是在交易请求期间我收到错误。
请求交易错误" "操作无法完成。 (com.apple.CallKit.error.requesttransaction错误2。)
我该如何解决?
更新:当设备收到来电时,所有交易都会毫无错误地执行。
答案 0 :(得分:0)
这是我的错误,因为我没有初始化ProviderDelegate
,在初始化之后一切正常。