pendo-io / pendo-mobile-sdk

Pendo captures product usage data, gathers user feedback, and lets you communicate in-app to onboard, educate, and guide users to value
https://www.pendo.io
Other
58 stars 2 forks source link

💥 Crash on `+[UIWindow(KeyWindow) getRelevantWindowFromWindows:]` #155

Closed msrutek-paylocity closed 2 months ago

msrutek-paylocity commented 3 months ago

Platform + Version

iOS 17.5.1, iPhone 13

SDK Version

3.2.2

Framework

Native, SwiftUI

Describe the bug

Crash of the app.

To Reproduce

Yet unknown.

Expected behavior

No crash.

Stack Trace

Crashed: com.apple.main-thread
0  QuartzCore                     0x8ef4 CA::Layer::mark(CA::Transaction*, unsigned int, unsigned int) + 80
1  QuartzCore                     0x8ba8 CA::Layer::property_did_change(CA::Transaction*, unsigned int) + 3212
2  QuartzCore                     0x7ebc CA::Layer::end_change(CA::Transaction*, unsigned int, objc_object*, objc_object*) + 36
3  QuartzCore                     0x7230 CA::Layer::setter(unsigned int, _CAValueType, void const*) + 884
4  QuartzCore                     0x69f38 -[CALayer setName:] + 56
5  UIKitCore                      0x2adec -[UIView _updateAutogeneratedNameForLayerIfNeeded] + 488
6  UIKitCore                      0x2a0ec UIViewCommonInitWithFrame + 1224
7  UIKitCore                      0x2bd3c -[UIView initWithFrame:] + 132
8  UIKitCore                      0x3949a0 -[UIWindow _initWithFrame:debugName:windowScene:] + 132
9  UIKitCore                      0x2f9ca0 -[UIWindow _initWithFrame:debugName:scene:attached:] + 136
10 UIKit                          0x14fdf0 -[UIWindowAccessibility initWithFrame:]
11 Pendo                          0x6453c +[UIWindow(KeyWindow) getRelevantWindowFromWindows:] + 268
12 Pendo                          0x6429c +[UIWindow(KeyWindow) keyWindowDeprecated] + 44
13 Pendo                          0x6404c +[UIWindow(KeyWindow) pnd_appKeyWindow] + 40
14 Pendo                          0x1056bc +[PendoGlobalUtils getDeviceOrientation] + 244
15 Pendo                          0x105750 __40+[PendoGlobalUtils getDeviceOrientation]_block_invoke + 24
16 libdispatch.dylib              0x3dd4 _dispatch_client_callout + 20
17 libdispatch.dylib              0x1339c _dispatch_async_and_wait_invoke + 92
18 libdispatch.dylib              0x3dd4 _dispatch_client_callout + 20
19 libdispatch.dylib              0x125a4 _dispatch_main_queue_drain + 988
20 libdispatch.dylib              0x121b8 _dispatch_main_queue_callback_4CF + 44
21 CoreFoundation                 0x56710 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16
22 CoreFoundation                 0x53914 __CFRunLoopRun + 1996
23 CoreFoundation                 0x52cd8 CFRunLoopRunSpecific + 608
24 GraphicsServices               0x11a8 GSEventRunModal + 164
25 UIKitCore                      0x40a90c -[UIApplication _run] + 888
26 UIKitCore                      0x4be9d0 UIApplicationMain + 340
27 REDACTED                       0x584c main + 9 (AppDelegate.swift:9)
28 ???                            0x1c28d1e4c (Missing)

Full Crash Log

Full crash log >>> ``` # Date: Thu Jul 11 2024 13:07:19 GMT+0200 (Central European Summer Time) Crashed: com.apple.main-thread 0 QuartzCore 0x8ef4 CA::Layer::mark(CA::Transaction*, unsigned int, unsigned int) + 80 1 QuartzCore 0x8ba8 CA::Layer::property_did_change(CA::Transaction*, unsigned int) + 3212 2 QuartzCore 0x7ebc CA::Layer::end_change(CA::Transaction*, unsigned int, objc_object*, objc_object*) + 36 3 QuartzCore 0x7230 CA::Layer::setter(unsigned int, _CAValueType, void const*) + 884 4 QuartzCore 0x69f38 -[CALayer setName:] + 56 5 UIKitCore 0x2adec -[UIView _updateAutogeneratedNameForLayerIfNeeded] + 488 6 UIKitCore 0x2a0ec UIViewCommonInitWithFrame + 1224 7 UIKitCore 0x2bd3c -[UIView initWithFrame:] + 132 8 UIKitCore 0x3949a0 -[UIWindow _initWithFrame:debugName:windowScene:] + 132 9 UIKitCore 0x2f9ca0 -[UIWindow _initWithFrame:debugName:scene:attached:] + 136 10 UIKit 0x14fdf0 -[UIWindowAccessibility initWithFrame:] 11 Pendo 0x6453c +[UIWindow(KeyWindow) getRelevantWindowFromWindows:] + 268 12 Pendo 0x6429c +[UIWindow(KeyWindow) keyWindowDeprecated] + 44 13 Pendo 0x6404c +[UIWindow(KeyWindow) pnd_appKeyWindow] + 40 14 Pendo 0x1056bc +[PendoGlobalUtils getDeviceOrientation] + 244 15 Pendo 0x105750 __40+[PendoGlobalUtils getDeviceOrientation]_block_invoke + 24 16 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20 17 libdispatch.dylib 0x1339c _dispatch_async_and_wait_invoke + 92 18 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20 19 libdispatch.dylib 0x125a4 _dispatch_main_queue_drain + 988 20 libdispatch.dylib 0x121b8 _dispatch_main_queue_callback_4CF + 44 21 CoreFoundation 0x56710 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 16 22 CoreFoundation 0x53914 __CFRunLoopRun + 1996 23 CoreFoundation 0x52cd8 CFRunLoopRunSpecific + 608 24 GraphicsServices 0x11a8 GSEventRunModal + 164 25 UIKitCore 0x40a90c -[UIApplication _run] + 888 26 UIKitCore 0x4be9d0 UIApplicationMain + 340 27 REDACTED 0x584c main + 9 (AppDelegate.swift:9) 28 ??? 0x1c28d1e4c (Missing) broadcast-ax-notify 0 libsystem_kernel.dylib 0x1808 mach_msg2_trap + 8 1 libsystem_kernel.dylib 0x5008 mach_msg2_internal + 80 2 libsystem_kernel.dylib 0x4f20 mach_msg_overwrite + 436 3 libsystem_kernel.dylib 0x4d60 mach_msg + 24 4 AXRuntime 0x6570 _AXMIGBroadcastNotification + 464 5 AXRuntime 0x6290 __AXPushNotificationToSystemForBroadcast_block_invoke_2 + 216 6 libdispatch.dylib 0x213c _dispatch_call_block_and_release + 32 7 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20 8 libdispatch.dylib 0xb400 _dispatch_lane_serial_drain + 748 9 libdispatch.dylib 0xbf30 _dispatch_lane_invoke + 380 10 libdispatch.dylib 0x16cb4 _dispatch_root_queue_drain_deferred_wlh + 288 11 libdispatch.dylib 0x16528 _dispatch_workloop_worker_thread + 404 12 libsystem_pthread.dylib 0x4934 _pthread_wqthread + 288 13 libsystem_pthread.dylib 0x10cc start_wqthread + 8 Thread 0 libsystem_pthread.dylib 0x10c4 start_wqthread + 8373567682 com.apple.uikit.eventfetch-thread 0 libsystem_kernel.dylib 0x1808 mach_msg2_trap + 8 1 libsystem_kernel.dylib 0x5008 mach_msg2_internal + 80 2 libsystem_kernel.dylib 0x4f20 mach_msg_overwrite + 436 3 libsystem_kernel.dylib 0x4d60 mach_msg + 24 4 CoreFoundation 0x53f5c __CFRunLoopServiceMachPort + 160 5 CoreFoundation 0x53600 __CFRunLoopRun + 1208 6 CoreFoundation 0x52cd8 CFRunLoopRunSpecific + 608 7 Foundation 0xc7e4c -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 212 8 Foundation 0xc7c9c -[NSRunLoop(NSRunLoop) runUntilDate:] + 64 9 UIKitCore 0x41e640 -[UIEventFetcher threadMain] + 420 10 Foundation 0xde718 __NSThread__start__ + 732 11 libsystem_pthread.dylib 0x606c _pthread_start + 136 12 libsystem_pthread.dylib 0x10d8 thread_start + 8 com.google.firebase.crashlytics.MachExceptionServer 0 libsystem_kernel.dylib 0x1808 mach_msg2_trap + 8 1 libsystem_kernel.dylib 0x5008 mach_msg2_internal + 80 2 libsystem_kernel.dylib 0x4f20 mach_msg_overwrite + 436 3 libsystem_kernel.dylib 0x4d60 mach_msg + 24 4 REDACTED 0x7fb18 FIRCLSMachExceptionServer + 194 (FIRCLSMachException.c:194) 5 libsystem_pthread.dylib 0x606c _pthread_start + 136 6 libsystem_pthread.dylib 0x10d8 thread_start + 8 com.apple.CFSocket.private 0 libsystem_kernel.dylib 0x9474 select$DARWIN_EXTSN + 8 1 libsystem_kernel.dylib 0x9474 __select + 8 2 CoreFoundation 0xbeb7c __CFSocketManager + 640 3 libsystem_pthread.dylib 0x606c _pthread_start + 136 4 libsystem_pthread.dylib 0x10d8 thread_start + 8 com.apple.NSURLConnectionLoader 0 libsystem_kernel.dylib 0x1808 mach_msg2_trap + 8 1 libsystem_kernel.dylib 0x5008 mach_msg2_internal + 80 2 libsystem_kernel.dylib 0x4f20 mach_msg_overwrite + 436 3 libsystem_kernel.dylib 0x4d60 mach_msg + 24 4 CoreFoundation 0x53f5c __CFRunLoopServiceMachPort + 160 5 CoreFoundation 0x53600 __CFRunLoopRun + 1208 6 CoreFoundation 0x52cd8 CFRunLoopRunSpecific + 608 7 CFNetwork 0xfdc90 _CFHostIsDomainTopLevel + 108176 8 Foundation 0xde718 __NSThread__start__ + 732 9 libsystem_pthread.dylib 0x606c _pthread_start + 136 10 libsystem_pthread.dylib 0x10d8 thread_start + 8 Thread 0 libsystem_pthread.dylib 0x10c4 start_wqthread + 8373567682 JavaScriptCore libpas scavenger 0 libsystem_kernel.dylib 0x71cc __psynch_cvwait + 8 1 libsystem_pthread.dylib 0x36e4 _pthread_cond_wait + 1228 2 JavaScriptCore 0x155b0a4 scavenger_thread_main + 1512 3 libsystem_pthread.dylib 0x606c _pthread_start + 136 4 libsystem_pthread.dylib 0x10d8 thread_start + 8 pendo.api.initQueue 0 libsystem_kernel.dylib 0x7d0c __ulock_wait + 8 1 libdispatch.dylib 0x47c4 _dlock_wait + 56 2 libdispatch.dylib 0x4578 _dispatch_thread_event_wait_slow + 56 3 libdispatch.dylib 0x135b0 __DISPATCH_WAIT_FOR_QUEUE__ + 368 4 libdispatch.dylib 0x1315c _dispatch_sync_f_slow + 148 5 Pendo 0x105680 +[PendoGlobalUtils getDeviceOrientation] + 184 6 Pendo 0x1055b4 +[PendoGlobalUtils deviceOrientationAsString] + 24 7 Pendo 0x6f220 +[PNDAnalyticsAppTracker createAppInForegroundAnalytics] + 96 8 Pendo 0x1bfec -[PNDPrivateAppDelegate sendAppInForegroundAnalytics] + 48 9 Pendo 0x65888 -[PendoAPI initSDKWithParams:initWithoutVisitor:] + 804 10 Pendo 0x66b00 -[PendoAPI triggerSwitchVisitorWithParams:] + 88 11 Pendo 0x66858 -[PendoAPI startSessionFlow:withParams:] + 1352 12 libdispatch.dylib 0x213c _dispatch_call_block_and_release + 32 13 libdispatch.dylib 0x3dd4 _dispatch_client_callout + 20 14 libdispatch.dylib 0xb400 _dispatch_lane_serial_drain + 748 15 libdispatch.dylib 0xbf30 _dispatch_lane_invoke + 380 16 libdispatch.dylib 0x16cb4 _dispatch_root_queue_drain_deferred_wlh + 288 17 libdispatch.dylib 0x16528 _dispatch_workloop_worker_thread + 404 18 libsystem_pthread.dylib 0x4934 _pthread_wqthread + 288 19 libsystem_pthread.dylib 0x10cc start_wqthread + 8 com.apple.root.default-qos.overcommit 0 libdispatch.dylib 0x2cc54 firehose_buffer_ring_enqueue + 136 1 libdispatch.dylib 0x2b93c voucher_activity_trace_v_2 + 1248 2 libsystem_trace.dylib 0x6c50 _os_log_impl_flatten_and_send + 6548 3 libsystem_trace.dylib 0x3dd0 _os_log + 168 4 libsystem_trace.dylib 0x3d20 _os_log_impl + 28 5 libxpc.dylib 0xe2bc do_mach_notify_port_destroyed + 256 6 libxpc.dylib 0x36cf8 _Xmach_notify_port_destroyed + 84 7 libxpc.dylib 0x36eb0 notify_server + 96 8 libxpc.dylib 0x1244c _xpc_connection_pass2mig + 172 9 libxpc.dylib 0x13778 _xpc_connection_mach_event + 1004 10 libdispatch.dylib 0x3e94 _dispatch_client_callout4 + 20 11 libdispatch.dylib 0x20000 _dispatch_mach_msg_invoke + 468 12 libdispatch.dylib 0xb284 _dispatch_lane_serial_drain + 368 13 libdispatch.dylib 0x20d50 _dispatch_mach_invoke + 444 14 libdispatch.dylib 0x16cb4 _dispatch_root_queue_drain_deferred_wlh + 288 15 libdispatch.dylib 0x16528 _dispatch_workloop_worker_thread + 404 16 libsystem_pthread.dylib 0x4934 _pthread_wqthread + 288 17 libsystem_pthread.dylib 0x10cc start_wqthread + 8 Thread 0 libsystem_pthread.dylib 0x10c4 start_wqthread + 8373567682 Thread 0 libsystem_pthread.dylib 0x10c4 start_wqthread + 8373567682 ```
orendayan commented 3 months ago

@msrutek-paylocity Can you tell us how many of these occur? Can you share the Apple log? Also, we've released 3.3.1. Please upgrade and let us know if it solved the issues.

MikePendo commented 3 months ago

@msrutek-paylocity We have opened a TSI with apple to have more insight on the issue. We can reproduce the stack trace on our side but we dont see any crashes regarding to that part. We are waiting for apple response for any reason of the crash and how to avoid it. Any chance you could get a full Apple crash log? (as it might be very difficult to ask Apple to help if they without their reports). How many crashes did u see so far?

msrutek-paylocity commented 3 months ago

@orendayan @MikePendo

Can you tell us how many of these occur?

Currently a couple of occurrences.

Can you share the Apple log?

Unfortunately, none of the crashes can be found in the Apple crash logs, as the users don't have sharing feedback with developers turned on.

Also, we've released 3.3.1. Please upgrade and let us know if it solved the issues.

We've updated and we'll see in the coming weeks.

TehilaTaub commented 2 months ago

Hi @msrutek-paylocity we are currently working on a fix. We will update you when this will be out.

msrutek-paylocity commented 2 months ago

@TehilaTaub Thanks for the info!

TehilaTaub commented 2 months ago

@msrutek-paylocity we have released 3.3.2 with the fix.

msrutek-paylocity commented 2 months ago

@TehilaTaub Thanks!