I'm using KeyChainItemWrapper class, provided by Apple's Sample Code to save the authentication token to the keychain.
KeychainItemWrapper *keychain = [[KeychainItemWrapper alloc] initWithIdentifier"JetTaxiApp_AuthToken" accessGroup:nil];
But when I'm trying to set the value to keychain, an odd exception is raised
[_authenticationTokenKeychain setObject:authenticationToken forKey: @"auth_token"];
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Couldn't add the Keychain Item.'
The keychain doesn't exist yet (at the moment of this call) What can cause this exception?
You need to use standard keys, so here your
@"auth_token"
is incorrect.source, with list of valid constants: Keychain Services Reference
For instance, you can use:
For code snippet above, key param is only can use the keys provided from sdk. You can find all in SecItem.h