We're developing a AR app, and when app enter background after experience AR, sometimes it crashed.
We compare iPhone X with iOS 13.7、14.4、14.6 and found that this only crashed in iOS 14.4 Is this iOS14.4's bug or unity's?
Here is the crash :
Exception Type: EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace SPRINGBOARD, Code 0x8badf00d
Termination Description: SPRINGBOARD, <RBSTerminateContext| domain:10 code:0x8BADF00D explanation:scene-update watchdog transgression: application<com.ezxr.thesongmemories>:2413 exhausted real (wall clock) time allowance of 10.00 seconds | ProcessVisibility: Background | ProcessState: Running | WatchdogEvent: scene-update | WatchdogVisibility: Background | WatchdogCPUStatistics: ( | "Elapsed total CPU time (seconds): 8.710 (user 8.710, system 0.000), 15% CPU", | "Elapsed application CPU time (seconds): 0.422, 1% CPU" | ) reportType:CrashLog maxTerminationResistance:Interactive>
Triggered by Thread: 0
and the log found in iOS 14.4
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x00000001b79621ac __psynch_cvwait + 8
1 libsystem_pthread.dylib 0x00000001d54bf468 _pthread_cond_wait + 1192
2 Foundation 0x000000018acb33e4 -[NSOperation waitUntilFinished] + 584
3 CoreFoundation 0x00000001899698c0 _CFXNotificationPost + 796
4 Foundation 0x000000018ac304bc -[NSNotificationCenter postNotificationName:object:userInfo:] + 64
5 UIKitCore 0x000000018c3cee04 __47-[UIApplication _applicationDidEnterBackground]_block_invoke + 316
6 UIKitCore 0x000000018bcacc6c +[UIViewController _performWithoutDeferringTransitionsAllowingAnimation:actions:] + 164
7 UIKitCore 0x000000018c3ceb9c -[UIApplication _applicationDidEnterBackground] + 144
8 UIKitCore 0x000000018ba1dc2c __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke_2 + 904
9 UIKitCore 0x000000018bf8af9c _UIScenePerformActionsWithLifecycleActionMask + 112
10 UIKitCore 0x000000018ba1d80c __101-[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:]_block_invoke + 224
11 UIKitCore 0x000000018ba1d2cc -[_UISceneLifecycleMultiplexer _performBlock:withApplicationOfDeactivationReasons:fromReasons:] + 484
12 UIKitCore 0x000000018ba1d61c -[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:] + 768
13 UIKitCore 0x000000018ba1ce58 -[_UISceneLifecycleMultiplexer uiScene:transitionedFromState:withTransitionContext:] + 340
14 UIKitCore 0x000000018ba253a4 __186-[_UIWindowSceneFBSSceneTransitionContextDrivenLifecycleSettingsDiffAction _performActionsForUIScene:withUpdatedFBSScene:settingsDiff:fromSettings:transitionContext:lifecycleActionType:]_block_invoke + 196
15 UIKitCore 0x000000018be9760c +[BSAnimationSettings+ 6936076 (UIKit) tryAnimatingWithSettings:actions:completion:] + 892
16 UIKitCore 0x000000018bfa36c4 _UISceneSettingsDiffActionPerformChangesWithTransitionContext + 272
17 UIKitCore 0x000000018ba2509c -[_UIWindowSceneFBSSceneTransitionContextDrivenLifecycleSettingsDiffAction _performActionsForUIScene:withUpdatedFBSScene:settingsDiff:fromSettings:transitionContext:lifecycleActionType:] + 384
18 UIKitCore 0x000000018b84c5a0 __64-[UIScene scene:didUpdateWithDiff:transitionContext:completion:]_block_invoke + 776
19 UIKitCore 0x000000018b84af14 -[UIScene _emitSceneSettingsUpdateResponseForCompletion:afterSceneUpdateWork:] + 256
20 UIKitCore 0x000000018b84c1c8 -[UIScene scene:didUpdateWithDiff:transitionContext:completion:] + 248
21 UIKitCore 0x000000018bec12e8 -[UIApplicationSceneClientAgent scene:handleEvent:withCompletion:] + 492
22 FrontBoardServices 0x0000000199778c94 -[FBSScene updater:didUpdateSettings:withDiff:transitionContext:completion:] + 484
23 FrontBoardServices 0x00000001997a5504 __94-[FBSWorkspaceScenesClient _queue_updateScene:withSettings:diff:transitionContext:completion:]_block_invoke_2 + 152
24 FrontBoardServices 0x00000001997874a0 -[FBSWorkspace _calloutQueue_executeCalloutFromSource:withBlock:] + 240
25 FrontBoardServices 0x00000001997a5430 __94-[FBSWorkspaceScenesClient _queue_updateScene:withSettings:diff:transitionContext:completion:]_block_invoke + 396
26 libdispatch.dylib 0x0000000189601db0 _dispatch_client_callout + 20
27 libdispatch.dylib 0x0000000189605738 _dispatch_block_invoke_direct + 268
28 FrontBoardServices 0x00000001997cc250 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 48
29 FrontBoardServices 0x00000001997cbee0 -[FBSSerialQueue _targetQueue_performNextIfPossible] + 448
30 FrontBoardServices 0x00000001997cc434 -[FBSSerialQueue _performNextFromRunLoopSource] + 32
31 CoreFoundation 0x000000018998976c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28
32 CoreFoundation 0x0000000189989668 __CFRunLoopDoSource0 + 208
33 CoreFoundation 0x0000000189988960 __CFRunLoopDoSources0 + 268
34 CoreFoundation 0x0000000189982a8c __CFRunLoopRun + 824
35 CoreFoundation 0x000000018998221c CFRunLoopRunSpecific + 600
36 GraphicsServices 0x00000001a154e784 GSEventRunModal + 164
37 UIKitCore 0x000000018c3c2ee8 -[UIApplication _run] + 1072
38 UIKitCore 0x000000018c3c875c UIApplicationMain + 168
39 libswiftUIKit.dylib 0x000000019dce92e4 UIApplicationMain+ 94948 (_:_:_:_:) + 104
40 SongMemory 0x0000000104811fa4 0x1047bc000 + 352164
41 SongMemory 0x0000000104811f1c 0x1047bc000 + 352028
42 SongMemory 0x00000001048120b8 0x1047bc000 + 352440
43 libdyld.dylib 0x00000001896426b0 start + 4
And when we run it with xcode, the app just lose response, attaches show the what the thread is doing.
Some users stay in iOS 14.4, so is this some way to avoid this crash?