Crash on iOS 13 devices related to NSClassFromString - ios

I am getting crash on iOS13 devices with a following crash log
Crashed: BSXPCCnx:com.apple.frontboard.systemappservices (BSCnx:client:com.apple.frontboard.workspace-service)
EXC_BAD_ACCESS 0x0000000104a1c458
App has Firebase, Facebook and Realm SDK which uses NSClassFromString. 96% crashes have occurred when app is in the background state.
We used NSFileProtectionComplete for data protection
One solution suggested on Apple Forum is, if NSFileProtectionComplete in entitlements, use NSFileProtectionCompleteUntilFirstUserAuthentication, then locking specific directories with NSFileProtectionComplete. But not sure this solution will work or not as not able to reproduce the crash. Any help will be really appreciated

With iOS 13.2 beta 3, the crash is not reproducible with above-mentioned step. Looks like the issue was from Apple and they have taken care in 13.2 release

Related

iOS crash below iOS9.3 with SIGSEGV, different Crash Log

Many crashes happened below the iOS9.3 (which means devices with iOS10 are OK)..
The crash logs seem to show that it's not a problem about API that can only be used below iOS 9.3 .
But I have no idea about the crash logs. ( I'm sorry ...for I just start to study iOS development for only 2 month )
Could you please help me analyze the crash logs ?
Really Thanks !
crash log 1
crash log 2
AXE_BAD_ACCESS - this is problem with memory. One of function tried to use variable which already released. I think you need to check use your TableView and cells for this table.
Also to find problem with memory you can try to use zombies
Used to have the similar strange crashes in my app. And only in production, when testing from TestFlight. Building on device with ios 9 caused no problems.
Maybe it sounds strange, but try to convert all images you use in app to images with included sRGB color profile. For me it helped.

Keychain error -34018, unable to delete current dictionary

I have an app that is written in Swift 2.3. The app uses the KeychainItemWrapper that makes accessing the Keychain simpler.
When I run the app in the iOS 9.3 simulator with Xcode, the app runs as expected and there are no issues reading/writing to the keychain.
The same exact app, without any changes in my code, crashes with the call to:
- (void)resetKeychainItem
With the line:
SecItemDelete((__bridge CFDictionaryRef)tempDictionary);
Thus making this NSAssert give me my error:
NSAssert( junk == noErr || junk == errSecItemNotFound, #"Problem deleting current dictionary." );
Researching this error by the code 34018 pointed me to other posts with users experiencing a bug with the keychain that was actually brought to the attention of the devs at Apple. It was made a high priority bug, and one post suggested iOS 9.3 had a fix for this (my app works on iOS 9.3!).
However, it is my understanding that Xcode 8 handles such things as code signing differently than previous versions. So I wonder if with iOS 10 if this is a possible new bug.
If anyone has any ideas or experience with this error on iOS 10/Xcode 8... please share your suggestions.

Firebase crash reporting causing crashes on iOS 10

I noticed that since iOS 10 release I have couple of crashes refers to firebase library system monitoring.
Crashed: com.google.system-monitoring
SIGABRT ABORT 0x0000000186c58ff0
-[FCRSystemMetadata sampleMemoryStats] + 4300660144
I already updated to the latest version of firebase on my app, but is there any way I can fix this?
At this moment, Firebase does not work on iOS 10, neither a device nor a simulator. This is a work in progress, so please stay tuned for updates. You can follow general discussion on Firebase at the firebase-talk group, and the Firebase Blog will have announcements as they occur.

App crashes on iPad device but working on simulator

I just have device UDID & client reported that the app is crashing
on his device & he is not able to start application.
The client device iOS version is 7.1.2
Also i am not having any crash report.(Asked for Crash Report)
Now referring
(iAd works on simulator but crash on device(ipad)):
I am assuming the reason behind this might be the library,
So will making iAD.framwork optional & handling codes related to this do the trick?
**Update:
Unfortunately the cause of the crash was -[__NSCFString containsString:]: unrecognized selector sent which was iOS version fault & not device fault. I got it resolved. sorry to iAd for blaming or trying to blame. Long live iAd. Thanks**
First of all - you need crash details. Without it, nobody help you.
Integrate any crash reporter SDK: Crashlytics or anything like this.

App crashes on some device with Application exited abnormally with signal 11: Segmentation fault: 11

I'm working on an iOS app and it load images from an URL like this image it is working perfectly on all the test devices in my office(and on simulator as well). but client said that the app is crashing whenever any image comes, everything else working as expected.
Now the question is if there is any problem than how it is working on my side? Is there any way(any app or anything) by using them client can send crash report to me so i can check?
Note:- we are testing on the same iOS version(7.x)
EDIT:- Some how they get the log and send to me from that i got
May 20 22:48:47 iPhone-5S com.apple.launchd[1] (UIKitApplication:com.Ba-cha[0xfbd1][287]) <Warning>: (UIKitApplication:com.Ba-cha[0xfbd1]) Job appears to have crashed: Segmentation fault: 11
May 20 22:48:47 iPhone-5S backboardd[31] <Warning>: Application 'UIKitApplication:com.Ba-cha[0xfbd1]' exited abnormally with signal 11: Segmentation fault: 11
I searched for the same and tried NSZombieEnabled but in my device (iPhone 4 and iPhone5) it is working perfectly no log? And now the question is How can i reproduce the issue on my device?
This is hit and try solution(at least worked for me):- My app Was worked fine on iPhone4 and 5(32 bit) but crash on iPhone 5s i.e. 64 bit processor. From some research on stackoverflow and Apple official i come to know perhaps there may be some problem in conversion between NSInteger to int. so i use NSInteger every where instead int.
Also i'v to remove armv64 from my project and set NO for "Build Active Architecture Only" (debug and release)
That did the trick for me, I didn't really need any 64bit specific functionality on my app so I took it out. I know this is a hack and not a good solution but at least it works.
As Adam suggested, iTunes would work but it may be better to save your client the chore...
You could alternatively send them a new version of the app using something like HockeyApp or TestFlight (free) integrated, allowing you to automatically receive the crash logs as well as the wide range of other useful tools they provide such as easier installation by the client.
They can load Xcode, and connect the device. Device logs can be viewed in the Organizer window. Crashes are marked as such. The log text can be cut and pasted or the export button can just save the whole thing as text.
Crashlytics offers software and service to upload crash logs.
It is possible to build up the information that appears in a crash log, but you will need unix signal handlers, various exceptions handlers, and a server to upload to.
Segmentation fault 11 means memory allocation issue. You possibly have made a coding issue like: using weak/assign, instead strong on NSObject

Resources