Как использовать Apple Keychain?
Я пытаюсь использовать scifihifi-iphone (от Github), чтобы хранить и извлекать имена пользователей и пароли. Однако, когда я добавляю класс SFHFKeychainUtils
, я получаю следующие ошибки:
"_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
Что я оставляю? Когда я нажимаю на ошибки, это не занимает меня в любом месте в коде.
Ответы
Ответ 1
Добавьте Security.framework
, затем перестройте. Иногда я нахожу, что мне нужно построить чистую, а затем перестроить.
Чтобы добавить это, щелкните правой кнопкой мыши по вашей цели в Xcode, затем Add- > Existing Frameworks и выберите (или перейдите) на Security.framework
.