2012-05-16 6 views
6

vinculación que acaba de intentar utilizar el KeychainItemWrapper proporcionado por Apple, pero estoy recibiendo un error vincular cada vez:KeychainItemWrapper error

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)

He incluido el marco de seguridad y comprueba por qué Apple incluido en el Xcode proyecto, pero parece que no puedo encontrar qué más está yendo mal.

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

También he añadido "com.website.project" a mi llavero de Grupos de Acceso.

+2

+1 me hiciste darme cuenta de que olvidé agregar el marco de seguridad ;-) –

Respuesta

11

Asegúrese de que KeychainItemWrapper se encuentre en la lista "Fuentes de compilación".

+0

Ajá, eso funciona, gracias, ¿no debería agregarse automáticamente cuando lo importo en cualquier clase? –

+1

Tiene que marcar la marca de verificación junto al nombre de su destino cuando importa archivos (lo sé, molesto). – CodaFi

+2

En iOS 7, agregue Security.framework en su lugar. – SwiftArchitect

Cuestiones relacionadas