2012-05-16 9 views
6

collega ho solo cercato di utilizzare il KeychainItemWrapper fornito da Apple, ma sto ottenendo un errore durante il collegamento ogni volta:KeychainItemWrapper errore

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)

Ho incluso il quadro di sicurezza e controllata perché Apple incluso nel Xcode progetto, ma non riesco a trovare cos'altro possa andare storto.

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

Ho anche aggiunto "com.website.project" al mio Accesso Portachiavi Gruppi.

+2

+1 mi hai fatto capire che ho dimenticato di aggiungere il framework di sicurezza ;-) –

risposta

11

Assicurarsi che KeychainItemWrapper sia nell'elenco "Fonti di compilazione".

+0

Aha, che funziona, grazie, non dovrebbe essere aggiunto automaticamente quando lo importa in qualsiasi classe? –

+1

È necessario spuntare il segno di spunta accanto al nome del target quando si importano i file (lo so, fastidioso). – CodaFi

+2

In iOS 7, invece, aggiungi Security.framework. – SwiftArchitect

Problemi correlati