Reputation: 3342
after updating Xcode and swift 5, after launching the simulator on iOS 12.2 my application crash on launch. But in earlier versions of ios (like 12.0) the application works correctly. I launched the application on a real device ios 12.0.1 and the app is working properly, then launched the application on an iOS device 12.2 and the app crash
I do not know if it's related but in the console I have this message:
objc[39432]: Swift class extensions and categories on Swift classes are not allowed to have +load methods
Then Xcode redirects to 0_abort_with_payload
:
libsystem_kernel.dylib`__abort_with_payload:
0x11365200c <+0>: movl $0x2000209, %eax ; imm = 0x2000209
0x113652011 <+5>: movq %rcx, %r10
0x113652014 <+8>: syscall
-> 0x113652016 <+10>: jae 0x113652020 ; <+20>
0x113652018 <+12>: movq %rax, %rdi
0x11365201b <+15>: jmp 0x113634457 ; cerror_nocancel
0x113652020 <+20>: retq
0x113652021 <+21>: nop
0x113652022 <+22>: nop
0x113652023 <+23>: nop
Upvotes: 1
Views: 2341
Reputation: 3342
The problem is solved; I use the Swinject CocoaPod so in the Podfile I updated the corresponding line for that pod with:
pod 'SwinjectStoryboard', :git => 'https://github.com/mdyson/SwinjectStoryboard.git', :branch => 'master'`
Upvotes: 1
Reputation: 6876
The error you mention is very related :)
objc[39432]: Swift class extensions and categories on Swift classes are not allowed to have +load methods
I can't find the reason why it occurs, but the problem seems to be that you, or some dependency you are using is using a static load
method, which is no longer allowed.
There are a couple of things you can try
load
functionsThis thread on twitter can also be used to pinpoint where the problem might be. As it is suggested, try adding OBJC_PRINT_LOAD_METHODS=YES
when you launch the app, as this should give you some more clues.
Hope that helps.
Upvotes: 2