我的应用程序接收VOiP调用的pushKit,但当它在前台调用时,它有自己的来电视图,所以我不想在应用程序每次收到新的VOiP时都显示callKit,只是在后台或不活动时才显示。但据我所知,pushKit规则规定在以下位置显示callKit是强制性的:
pushRegistry(_ registry: PKPushRegistry, didReceiveIncomingPushWith payload: PKPushPayload, for type: PKPushType, completion: @escaping () -> Void) {
Logger.debug("didReceiveIncomingPushWith", payload.dictionaryPayload.debugDescription)否则就会被禁止使用APNS。
所以,当应用程序在前台运行时,可以停用pushKit吗?
我的代码使用:
var voipRegistry = PKPushRegistry(queue: nil)
voipRegistry.delegate = self
voipRegistry.desiredPushTypes = [PKPushType.voIP]来激活pushKit,但是看起来PKPushRegistry没有任何方法来控制它的行为
发布于 2021-02-20 22:52:32
苹果引入的处理VOIP呼叫的变化确实打破了处理VOIP呼叫的通常方式。请参考苹果https://developer.apple.com/forums/thread/117939的官方回答,我相信这将帮助你了解你可以和不可以做什么语音通话,语音推送通知和CallKit。
https://stackoverflow.com/questions/66227160
复制相似问题