Mof
Mof

Reputation: 363

Crash in iOS app '[UIKBKeyplaneView setState:forKey:]'

I've had a strange crash appear on one my client's devices. Anyone know what this could mean?

The device is running iOS 10.2

Application Specific Information:

objc_msgSend() selector name: setFrame:

Thread 0 Crashed:
0   libobjc.A.dylib                      0x0000000184696f68 objc_msgSend + 8
1   UIKit                                0x000000018bc0f4c4 -[UIKBKeyplaneView setState:forKey:] + 780
2   UIKit                                0x000000018bc07b90 -[UIKeyboardLayoutStar setKeyplaneName:] + 6948
3   UIKit                                0x000000018bcb3744 -[UIKeyboardLayoutStar completeSendStringActionForTouchDownWithKey:withActions:executionContext:] + 964
4   UIKit                                0x000000018c577150 -[UIKeyboardTaskExecutionContext returnExecutionToParentWithInfo:] + 268
5   UIKit                                0x000000018bcb1458 -[UIKeyboardLayoutStar touchDownWithKey:atPoint:executionContext:] + 2832
6   UIKit                                0x000000018c577150 -[UIKeyboardTaskExecutionContext returnExecutionToParentWithInfo:] + 268
7   UIKit                                0x000000018bcaf870 -[UIKeyboardLayoutStar touchDown:executionContext:] + 644
8   UIKit                                0x000000018bf3596c __47-[UIKeyboardLayout touchDownTaskForTouchState:]_block_invoke + 296
9   UIKit                                0x000000018bb25b14 -[UIKeyboardTaskQueue continueExecutionOnMainThread] + 380
10  UIKit                                0x000000018bf34bbc -[UIKBTouchOrderedTaskList executeTasksInView:withBlock:] + 264
11  UIKit                                0x000000018bf377fc -[UIKeyboardLayout _enumerateDeferredTouchUUIDs:withBlock:] + 392
12  UIKit                                0x000000018bf37d5c __97-[UIKeyboardLayout recognizer:beginTouchDownForTouchWithId:atPoint:forBeginState:whenStateReady:]_block_invoke + 148
13  libdispatch.dylib                    0x0000000184ad61bc _dispatch_client_callout + 12
14  libdispatch.dylib                    0x0000000184ae7084 _dispatch_barrier_sync_f_slow_invoke + 316
15  libdispatch.dylib                    0x0000000184ad61bc _dispatch_client_callout + 12
16  libdispatch.dylib                    0x0000000184adad68 _dispatch_main_queue_callback_4CF + 996
17  CoreFoundation                       0x0000000185bfa810 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 8
18  CoreFoundation                       0x0000000185bf83fc __CFRunLoopRun + 1656
19  CoreFoundation                       0x0000000185b262b8 CFRunLoopRunSpecific + 440
20  GraphicsServices                     0x00000001875da198 GSEventRunModal + 176
21  UIKit                                0x000000018bb667fc -[UIApplication _run] + 680
22  UIKit                                0x000000018bb61534 UIApplicationMain + 204
23  Manager                              0x0000000100165410 main (main.m:9)
24  libdyld.dylib                        0x0000000184b095b8 start + 0

Upvotes: 1

Views: 733

Answers (1)

Mof
Mof

Reputation: 363

Ok for those people that might find themselves here, I found the issue. In fact there were 2 other strange stack traces that were also related to the same issue.

Basically if you try having a custom keyboard but use a container view with another view controller in the keyboard then 'weird stuff' happens. I found I was able to get my app to crash if I had the keyboard visible and navigated away and back again.

Anyway the crashes went away once I rewrote the keyboard to be a basic UIView instead of UIViewController. It's only been an hour or so of testing since the change but I feel confident that it was the issue.

Upvotes: 1

Related Questions