2009-10-12 28 views
26

Kullanıcı adları ve parolaları saklamak ve almak için scifihifi-iphone (from Github) kullanmaya çalışıyorum.Apple Keychain'i nasıl kullanırım?

"_kSecAttrAccount", referenced from: 
     _kSecAttrAccount$non_lazy_ptr in SFHFKeychainUtils.o 
    "_SecItemDelete", referenced from: 
     +[SFHFKeychainUtils deleteItemForUsername:andServiceName:error:] in SFHFKeychainUtils.o 
    "_kSecReturnAttributes", referenced from: 
     _kSecReturnAttributes$non_lazy_ptr in SFHFKeychainUtils.o 
    "_kSecClass", referenced from: 
     _kSecClass$non_lazy_ptr in SFHFKeychainUtils.o 
    "_kSecClassGenericPassword", referenced from: 
     _kSecClassGenericPassword$non_lazy_ptr in SFHFKeychainUtils.o 
    "_SecItemAdd", referenced from: 
     +[SFHFKeychainUtils storeUsername:andPassword:forServiceName:updateExisting:error:] in SFHFKeychainUtils.o 
    "_kSecAttrLabel", referenced from: 
     _kSecAttrLabel$non_lazy_ptr in SFHFKeychainUtils.o 
    "_SecItemUpdate", referenced from: 
     +[SFHFKeychainUtils storeUsername:andPassword:forServiceName:updateExisting:error:] in SFHFKeychainUtils.o 
    "_kSecAttrService", referenced from: 
     _kSecAttrService$non_lazy_ptr in SFHFKeychainUtils.o 
    "_kSecReturnData", referenced from: 
     _kSecReturnData$non_lazy_ptr in SFHFKeychainUtils.o 
    "_SecItemCopyMatching", referenced from: 
     +[SFHFKeychainUtils getPasswordForUsername:andServiceName:error:] in SFHFKeychainUtils.o 
     +[SFHFKeychainUtils getPasswordForUsername:andServiceName:error:] in SFHFKeychainUtils.o 
    "_kSecValueData", referenced from: 
     _kSecValueData$non_lazy_ptr in SFHFKeychainUtils.o 
ld: symbol(s) not found 
collect2: ld returned 1 exit status 

dışarı gidiyorum Ne: Ben sınıf SFHFKeychainUtils eklerken Ancak, aşağıdaki hataları olsun? Hataları tıkladığımda, beni koddaki herhangi bir yere götürmez.

+0

Bir bağlayıcı hatası gibi görünüyor. Kodunuzun Keychain ile ilk kez yaptığı bu mu? –

+0

Anahtarlık Çerçevesini de eklediniz mi? – jantimon

+0

Keychain çerçevesini uygulauma nasıl eklerim? – Jason

cevap

76

Security.framework ekleyin ve yeniden oluşturun. Bazen bulabilirim ki, temiz yapmalı ve sonra yeniden inşa etmeliyim.

sağ Security.framework için, Xcode hedefinize daha sonra Add-> Mevcut çerçeveleri tıklayın ve (veya gezinmek), bu ekleyin.

+0

Teşekkürler, bu harika. Açıkça var olmayan Keychain.framework adlı bir çerçeve arıyordum. – Jason

+0

Aynı hataya sıkışmış, cevabınız en iyi şekilde çalıştı. Teşekkürler –

+1

Bu benim sorunum çözüldü ANCAK Bulucu gelen Security.framework sürüklemek zorunda kaldı, XCode 4.2 "kütüphaneleri ile bağlantı" bölümünde ekleyerek (bu ekledi çerçeve bulmak için görünmüyordu) işe yaramadı. –