2012-05-16 24 views
6

Tôi chỉ cố gắng sử dụng KeychainItemWrapper cung cấp bởi Apple, nhưng tôi nhận được một lỗi khi liên kết mỗi lần:KeychainItemWrapper nối lỗi

Undefined symbols for architecture i386: "_OBJC_CLASS_$_KeychainItemWrapper", referenced from: objc-class-ref in DataModel.o

ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Tôi đã bao gồm khuôn khổ an ninh và kiểm tra tại sao Apple bao gồm trong Xcode dự án, nhưng tôi dường như không thể tìm thấy những gì khác đang xảy ra.

_keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"com.website.project" accessGroup:nil]; 
[_keychain setObject:_username forKey:(id)kSecAttrAccount]; 
[_keychain setObject:_password forKey:(id)kSecValueData]; 

Tôi cũng đã thêm "com.website.project" vào Nhóm truy cập Keychain của mình.

+2

+1 bạn đã làm cho tôi nhận ra rằng tôi quên thêm khung bảo mật ;-) –

Trả lời

11

Đảm bảo KeychainItemWrapper nằm trong danh sách "Nguồn biên dịch".

+0

Aha, hoạt động, cảm ơn, không nên thêm tự động khi tôi nhập nó vào bất kỳ lớp nào? –

+1

Bạn phải đánh dấu chọn bên cạnh tên mục tiêu của mình khi bạn nhập tệp (tôi biết, gây phiền nhiễu). – CodaFi

+2

Trên iOS 7, hãy thêm Security.framework để thay thế. – SwiftArchitect

Các vấn đề liên quan