Tôi đang sử dụng lớp KeychainItemWrapper (tệp .h và .m tích hợp trong dự án) để lưu mật mã trong Keychain cho Ứng dụng iOS. Cũng được nhập khẩu "Security" Framework và "keychianItemWrapper.h" lớp trong dự án bất cứ nơi nào nó là cần thiết. (# Import, #import "KeychainItemWrapper.h")Trả về "0" mọi lúc khi tìm nạp mật mã đã lưu keychain từ truy cập keychain cho ứng dụng ios
Tôi đang sử dụng mã dưới đây trong ứng dụng đại biểu phương pháp để tiết kiệm mật mã trong truy cập keychain:
if([textfieldPassword1.text isEqual:textfieldPassword2.text]){
NSLog(@"CONGRATS !! PASSCODE MATCHED !!!");
//converting "textfieldPassword1" to NSNumber
NSNumber *textfieldPasscode1Num = [NSNumber numberWithInt:[textfieldPassword1.text intValue]];
//saving passcode to the keychain access
[keychain setObject:textfieldPasscode1Num forKey:(__bridge id)kSecValueData];
// [keychain setObject:[NSNumber numberWithInt:[textfieldPassword1.text intValue]] forKey:(__bridge id)kSecAttrAccount];
// if passcode matches then load Show Lock Screen Page
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.viewController = [[ViewController alloc] init];
[self.window addSubview:self.viewController.view];
[self.window makeKeyAndVisible];
}
VÀ ĐÂY aM đặt Passcode SỬ DỤNG DƯỚI Mã sản phẩm:
if(_isResetPasscode){
NSLog(@"Code here for Update Passcode in Keychain Access !!!");
_isResetPasscode = FALSE;
// "keychain" is object of "KeychainItemWrapper" class
[keychain resetKeychainItem];
/* Again setting the new passcode entered by user in keychain access.. IT IS NOT SAVING IN keychain access, where above the same line of code was working for saving passcode in keychain access
/*
[keychain setObject:resetPasscodeNum forKey:(__bridge id)kSecValueData];
NSLog(@"----Passcode Re-Setted ----!! %@\n",resetPasscodeNum);
}
Khi tôi in keychain mật mã trong giao diện điều khiển mỗi khi nó được in "0". Hãy hướng dẫn tôi nơi tôi đang làm sai ... Trợ giúp của bạn sẽ được đánh giá cao !!
Cảm ơn trước Advance
Hi @Gambit nhập mật mã là "Số" Input, xem mã đang sử dụng "UIKeyboardTypeNumberPad" cho mật mã: UIAlertView * alertView = [[UIAlertView alloc] initWithTitle: @ "Enter Passcode" thông điệp: @ "Xin Nhập Mật khẩu 4 chữ số "ủy nhiệm: tự hủyButtonTitle: @" OK "otherButtonTitles: @" Cancel ", nil]; textfieldPassword1 = [[UITextField alloc] initWithFrame: CGRectMake (12.0, 90.0, 260.0, 25.0)]; textfieldPassword1.keyboardType = UIKeyboardTypeNumberPad; [textfieldPassword1 setDelegate: self]; [alertView addSubview: textfieldPassword1]; [hiển thị cảnh báo]; – NSExpression