このような NSMutableArray から生成されたデータを書き込もうとしています
// set up keychain so I can write to it… or read if needed (specially for testing)
KeychainItemWrapper *keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"KeychainTest" accessGroup:nil];
[keychain setObject:(__bridge id)(kSecAttrAccessibleWhenUnlocked) forKey:(__bridge id)(kSecAttrAccessible)];
//write to keychain
NSData *parsedRemoteSitesData = [NSKeyedArchiver archivedDataWithRootObject:parsedRemoteSitesMutableArray]; // converts MutableArray to NSData
[keychain setObject:parsedRemoteSitesData forKey:(__bridge id)(kSecValueData)]; pass data to keychain
NSData をキーチェーンに渡そうとしている最後の行でアプリがクラッシュしています。これがエラーです。
** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteMutableData dataUsingEncoding:]: unrecognized selector sent to instance
これは、配列を渡すときに NSData をエンコードしていないことを意味すると思いますが、よくわかりません.誰かが私に教えてくれるか、これを修正するためのサンプルコードを提供してくれることを望んでいました.
どんな助けでも大歓迎です。