我正在开发一个voip应用程序,该应用程序使用Callkit来显示来电的系统UI。

为了测试来电,我从我的应用触发了如下

let callHandle = CXHandle(type: .phoneNumber, value: "+9197xxxxxxxx")
let callUpdate = CXCallUpdate()
callUpdate.remoteHandle = callHandle
callUpdate.supportsDTMF = true
callUpdate.supportsHolding = true
callUpdate.supportsGrouping = false
callUpdate.supportsUngrouping = false
callUpdate.hasVideo = false
UIApplication.shared.beginBackgroundTask {
    print("Error")
}
DispatchQueue.main.asyncAfter(deadline: .now() + 10.0) {
    self.callKitProvider.reportNewIncomingCall(with: UUID(), update: callUpdate) { (error) in
        print(error)
    }
}

当应用程序处于前台状态时,它可以正常工作,但是当我将设备置于锁定状态时,它将引发错误,显示为“Error Domain = com.apple.CallKit.error.incomingcall Code = 3“(null)”“

请帮忙。感谢Adavance!

最佳答案

DND是@AntonioM在注释中建议的问题,将其关闭可以正常工作。

10-08 09:05