I'm experiencing intermittent crashes on iOS when launching a Flutter app after it was killed from the app switcher. The app works fine when resumed from background.
Environment:
Flutter 3.38.3
Crash signature:
EXC_BAD_ACCESS (SIGBUS)
Stack overflow in (null)
compare:options:range:locale: >
Thread 0: CFStringGetLength → CFStringCompareWithOptionsAndLocale → UIKitCore (
85+ inlined recursive calls)
What I've tried:
Increased stack size to 64MB (-Wl,-stack_size,0x4000000) - didn't help
Disabled iOS State Restoration - didn't help
Added snapshot overlay in applicationWillResignActive - helped for background issue, but not cold start
Key observation:
The crash happens intermittently. Sometimes the app opens on 2nd attempt, sometimes on 5th. This suggests a race condition between Flutter engine initialization and iOS view hierarchy traversal.
Question:
Is there a way to delay iOS view hierarchy operations until Flutter is fully initialized?
Any help appreciated!
Topic:
UI Frameworks
SubTopic:
UIKit