一般用Keychain來(lái)做賬號(hào)和密碼的存儲(chǔ)比較安全,大概如下:
KeychainItemWrapper *keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"MyLogin<span style="font-family: Arial, Helvetica, sans-serif; color: rgb(57, 51, 24);">" accessGroup:nil];</span>
[keychain setObject:self.phoneText.text forKey:(__bridge id)(kSecAttrAccount)];
[keychain setObject:self.keyText.text forKey:(__bridge id)(kSecValueData)];
但是偶爾會(huì)突然遇到一個(gè)問(wèn)題,就是爆出Couldn't update the Keychain Item的情況,然后應(yīng)用直接閃退。
查了一下,加了一行代碼,好像解決了問(wèn)題,看之后會(huì)不會(huì)還繼續(xù)出現(xiàn),原理也不是很清楚。
KeychainItemWrapper *keychain = [[KeychainItemWrapper alloc] initWithIdentifier:@"MyLogin<span style="font-family: Arial, Helvetica, sans-serif;">" accessGroup:nil];</span>
[keychain setObject:self.phoneText.text forKey:(__bridge id)(kSecAttrAccount)];
[keychain setObject:self.keyText.text forKey:(__bridge id)(kSecValueData)];
[keychain setObject:@"AppString" forKey: (__bridge id)kSecAttrService];
感覺(jué)是為app加了一個(gè)標(biāo)識(shí),希望高手講解一下。
參考stackoverflow的:http://stackoverflow.com/questions/8054285/ios-keychainitemwrapper-not-updating