Уведомление VOIP с помощью CallKit не вызывает reportIncomingCall, когда приложение неактивно, убитое состояние - PullRequest
0 голосов
/ 10 июля 2020

Это приложение для видеосвязи. Я реализовал уведомления VoIP для получения видеозвонка. Получив уведомление VoIP, я использую CallKit для вызова reportNewIncomingCall().

Когда я сворачиваю приложение, я получаю входящий вызов, и поток работает нормально. Но когда я убиваю приложение, мне не приходит входящий звонок. Есть идеи, почему? Я также заметил, что когда я нажимаю и открываю приложение в следующий раз, оно вылетает:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Killing app because it never posted an incoming call to the system after receiving a PushKit VoIP push callback.'

Это говорит о том, что я не публикую reportNewIncomingCall. Но я уже делаю это и получаю звонок, когда приложение свернуто.

func pushRegistry(_ registry: PKPushRegistry,
                  didReceiveIncomingPushWith payload: PKPushPayload,
                  for type: PKPushType,
                  completion: @escaping () -> Void) {

    provider.reportNewIncomingCall(with: uuid, update: update) { error in
     
    }
    completion()
}

Только в убитом состоянии я не получаю звонки. Что еще нужно сделать, чтобы принимать звонки в убитом состоянии? Пожалуйста, помогите.

1 Ответ

1 голос
/ 13 июля 2020

Пробовали ли вы вызвать обработчик завершения pushRegistry внутри обработчика reportNewIncomingCall завершения?

func pushRegistry(_ registry: PKPushRegistry,
                  didReceiveIncomingPushWith payload: PKPushPayload,
                  for type: PKPushType,
                  completion: @escaping () -> Void) {

    provider.reportNewIncomingCall(with: uuid, update: update) { error in
        completion() // <----
    }
}

Даже если это не ясно в документации, я думаю, что это правильный способ обработки нового входящий звонок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...