This troubleshooting guidance applies only to MobilePush SDK for iOS versions 8.0.13 and earlier.
Important
Fatal Keychain Access exceptions occur if an application with an active SDK integration tries to access Keychain on a locked device secured with Face ID or passcode-based authentication. iOS Data Protection modes prevent the SDK from accessing these files.
These sections describe common Keychain Access exceptions and provide guidance on resolving them.
Setting this property to false logs the exception to the console instead of causing the app to crash.
Unknown Status Code (-34018)
You can encounter an error message that indicates a keychain access issue along with an unknown status code (-34018).
1Terminating app due to uncaught exception 'com.salesforce.security.keychainException',2reason: 'dictionaryItemFromKeychain: Error attempting to look up keychain item:3Unknown status code (-34018)'
To resolve this issue, enable Keychain Sharing in the Signing & Capabilities pane in Xcode. When you enable Keychain Sharing, you don’t need to add identifiers specific to the SDK.
Related Items
For an example of an ideal SDK implementation on iOS, see the iOS LearningApp.
Not all the code used in the LearningApp is required. Depending on your app, you can decide which parts to implement and which to ignore.