flutter_callkit icon indicating copy to clipboard operation
flutter_callkit copied to clipboard

iOS 16 CallKit closes after 60 seconds

Open AndreyKomarichev10 opened this issue 3 years ago • 2 comments

On iOS 16 devices, CallKit closes after 60 seconds. In previous versions of iOS (14, 15), it could be displayed for 90 seconds, and then we closed it by ourselves. We have tried other packages for CallKit, but they still have the same issue. Have anyone faced the same issue and knows how to bypass it?

UPD: logs that we get when CallKit is finished

flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXProvider > executeTransaction
flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXTransaction > getActions
flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXProvider > FCXEndCallAction
flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXProvider > reportCallEnded
flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXEndCallAction > fulfill
flutter: [[FlutterCallKit.INFO](http://fluttercallkit.info/)] FCXCallObserver > callChanged

I assume, that we are getting declined events from the system.

AndreyKomarichev10 avatar Sep 19 '22 10:09 AndreyKomarichev10

I've removed handling of declined events, but CallKit is still closed after 60 seconds. So, I think, we are getting declined events from the system, and the system closes callKit on the decline even if we haven’t told so. Our logs:

FlutterCallKit.performEndCallAction has been called
New Call Kit VoIP messages action = VoipAction.declined has been received

AndreyKomarichev10 avatar Sep 19 '22 10:09 AndreyKomarichev10

Hello, we investigated you case, and it seems, that you are right, Apple did add 60 sec timeout for incoming call in iOS 16 vs lower versions, where there was no timeout at all. This is undocumented change, and since the call is ending after 60 sec no matter what we do, i am afraid there is no way to bypass this new restriction.

YesVladess avatar Sep 20 '22 13:09 YesVladess