Когда я создаю приложение прямо на свой iPhone, я могу хранить элементы в keyChain, но если я его заархивирую и отправлю в ItunesConnect, а кто-то скажет его с помощью testFlight, хранить элемент в KeychainБрелок не работает при установке приложения с помощью TestFlight
Вот о том, когда он пытается получить доступ к брелка:
Dec 4 23:10:40 <Error>: securityd_xpc_dictionary_handler appName[2687] add The operation couldn’t be completed. (OSStatus error -25299 - duplicate item O,genp,7937CF51,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.123944Z,F87F1109)
Dec 4 23:10:40 <Error>: SecOSStatusWith error:[-25299] The operation couldn’t be completed. (OSStatus error -25299 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -25299 - duplicate item O,genp,7937CF51,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.123944Z,F87F1109))
Dec 4 23:10:40 <Error>: securityd_xpc_dictionary_handler appName[2687] add The operation couldn’t be completed. (OSStatus error -25299 - duplicate item O,genp,801FEEB1,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.146946Z,5CD00596)
Dec 4 23:10:40 <Error>: SecOSStatusWith error:[-25299] The operation couldn’t be completed. (OSStatus error -25299 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -25299 - duplicate item O,genp,801FEEB1,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.146946Z,5CD00596))
Dec 4 23:10:40 <Error>: securityd_xpc_dictionary_handler appName[2687] add The operation couldn’t be completed. (OSStatus error -25299 - duplicate item O,genp,7937CF51,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.20269Z,846CAAC0)
Dec 4 23:10:40 <Error>: SecOSStatusWith error:[-25299] The operation couldn’t be completed. (OSStatus error -25299 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -25299 - duplicate item O,genp,7937CF51,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.20269Z,846CAAC0))
Dec 4 23:10:40 <Error>: securityd_xpc_dictionary_handler appName[2687] add The operation couldn’t be completed. (OSStatus error -25299 - duplicate item O,genp,801FEEB1,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.222921Z,7E11CA46)
Dec 4 23:10:40 <Error>: SecOSStatusWith error:[-25299] The operation couldn’t be completed. (OSStatus error -25299 - Remote error : The operation couldn‚Äôt be completed. (OSStatus error -25299 - duplicate item O,genp,801FEEB1,L,ak,bundleID.appName,0,acct,svce,gena,v_Data,20141205041040.222921Z,7E11CA46))
EDIT
Это то, что я использую, чтобы положить что-то в связке ключей: https://github.com/jrendel/KeychainWrapper/blob/master/KeychainWrapper/KeychainWrapper.swift
Я не знаю, использует ли он kSecClassGenericPassword. Это то, что я сделать, чтобы поместить данные в брелка:
KeychainWrapper.setString(self.username.text, forKey: "username")
KeychainWrapper.setString(self.password.text, forKey: "password")
И я получить его обратно с помощью:
if let u = KeychainWrapper.stringForKey("username") {
username = KeychainWrapper.stringForKey("username")!
password = KeychainWrapper.stringForKey("password")!
}
Что вы пытаетесь сохранить в брелках? элементы связки ключей на устройство или на пользователя (iCloud), поэтому, если вы поместите что-то в свой собственный брелок через ваше приложение, оно не будет передаваться магически в чужой брелок. –
Я знаю, что пытаюсь сохранить имя пользователя и пароль, которые пользователь вводит в текстовое поле –