0

キーチェーンに一意のキーを持つ複数のパスワード/パスコードを保存する必要があります。キーチェーンから保存されたデータをフェッチしているときに、値が 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];
    }
}
4

1 に答える 1