キーチェーンに一意のキーを持つ複数のパスワード/パスコードを保存する必要があります。キーチェーンから保存されたデータをフェッチしているときに、値が nil になっています。誰でもこれから私を助けてくれますか。
これは私のコードです...
- (void)storeSensitiveDataToKeychain:(NSString *)value withKey:(NSString *)key {
NSString *keyValue = [self fetchDataFromKeychain:key];
if ([keyValue isEqualToString:@""] || [keyValue isEqual:[NSNull null]] || !keyValue.length || keyValue == nil) {
[keychainClass insert:key :[value dataUsingEncoding:NSUTF8StringEncoding]];
} else {
[keychainClass update:key :[value dataUsingEncoding:NSUTF8StringEncoding]];
}
}
- (NSString *)fetchDataFromKeychain:(NSString *)key {
NSData *value = [keychainClass find:key];
if (value == nil) {
NSLog(@"key value is nil");
return @"";
} else {
return [[NSString alloc] initWithData:value
encoding:NSUTF8StringEncoding];
}
}