3

Feature: I have implemented QuickBlox video calling in application.

Problem: Recipient doesn't receive incoming call notification if application is in background.

Result: Video calling is working fine up to iOS 12 but only problem with iOS 13.

I have checked many links to solve the problem:

  1. https://docs.quickblox.com/docs/ios-quick-start?_ga=2.195456812.1462473955.1597308006-918905754.1585299886
  2. https://docs.quickblox.com/docs/ios-video-calling-advanced
  3. https://github.com/QuickBlox/quickblox-ios-sdk/tree/master/sample-videochat-webrtc-swift
  4. https://github.com/twilio/voice-quickstart-ios/issues/275

Also, I have posted issues on QuickBlox's GitHub repo:

  1. https://github.com/QuickBlox/quickblox-ios-sdk/issues/1199
  2. https://github.com/QuickBlox/q-municate-ios/issues/345

Crashlog of the issue:

"didReceiveIncomingPushWith called"
"[HomeVC] timeIntervalSinceStartCall > QBRTCConfig.answerTimeInterval"
2020-06-23 22:51:12.114253+0530 MyApp[2555:1050373] Apps receving VoIP pushes must post an incoming call (via CallKit or IncomingCallNotifications) in the same run loop as pushRegistry:didReceiveIncomingPushWithPayload:forType:[withCompletionHandler:] without delay.
2020-06-23 22:51:12.114529+0530 MyApp[2555:1050373] *** Assertion failure in -[PKPushRegistry _terminateAppIfThereAreUnhandledVoIPPushes], /BuildRoot/Library/Caches/com.apple.xbs/Sources/PushKit/PushKit-36/PKPushRegistry.m:343
2020-06-23 22:51:12.127602+0530 MyApp[2555:1050373] *** 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.'
*** First throw call stack:
(0x1b7c3498c 0x1b795d0a4 0x1b7b36d1c 0x1b7f6c8f4 0x1cb735a5c 0x10b82ac04 0x10b839888 0x1cb7349cc 0x10b829828 0x10b82ac04 0x10b838c64 0x1b7bb23c4 0x1b7bad3b8 0x1b7bac8bc 0x1c1a18328 0x1bbc426d4 0x10520ac58 0x1b7a37460)
libc++abi.dylib: terminating with uncaught exception of type NSException
Message from debugger: Terminated due to signal 9
Parth Patel
  • 1,250
  • 1
  • 13
  • 21
  • 1
    It is working for iOS to iOS to all app stat, but not getting calls from Android to iOS when the app has in Background or Terminated state. Do you find any solution for this? – Kiran K Sep 03 '20 at 12:00
  • @KiranK did you found any solution for this? I am also facing the same problem... iOS to iOS working fine but android to iOS is not working. – Muhammad Danish Qureshi Aug 22 '22 at 06:37

1 Answers1

0

It looks like that app is receiving the voip notification properly, but is not handling it with a CallKit registerCall function, as it is written in docs and in crashlog it must happen immediately on the same run loop, which You can understand as the same thread, so make sure You have it implemented this way.

Robert Juz
  • 126
  • 7