TouchID does not show up
marbetschar opened this issue · 2 comments
marbetschar commented
I've tried to implement A0SimpleKeychain in my project - but for some reason the TouchID does not show up. It seems like I'm not able to store anything in the Keychain - as the id changes every time I execute the app.
Here's my code:
var error: NSError?
let message = "Please login"
let keychain = A0SimpleKeychain()
var defaultAccount = keychain.stringForKey("default.account", promptMessage: message)
if defaultAccount == nil {
let uuid = NSUUID().UUIDString.stringByReplacingOccurrencesOfString("-", withString: "", options: nil, range: nil).lowercaseString
defaultAccount = NSString(string: uuid)
let keychain = A0SimpleKeychain()
keychain.useAccessControl = true
keychain.defaultAccessiblity = .WhenPasscodeSetThisDeviceOnly
keychain.setString(defaultAccount, forKey: "default.account")
}
println(split( defaultAccount ){ $0 == "$" })
What I'm doing wrong?
hzalaz commented
Hi @marbetschar,
Did you try setting useAccessControl
to true
and defaultAccessiblity
before reading the value from the keychain?
var error: NSError?
let message = "Please login"
let keychain = A0SimpleKeychain()
keychain.useAccessControl = true
keychain.defaultAccessiblity = .WhenPasscodeSetThisDeviceOnly
var defaultAccount = keychain.stringForKey("default.account", promptMessage: message)
if defaultAccount == nil {
let uuid = NSUUID().UUIDString.stringByReplacingOccurrencesOfString("-", withString: "", options: nil, range: nil).lowercaseString
defaultAccount = NSString(string: uuid)
keychain.setString(defaultAccount, forKey: "default.account")
}
println(split( defaultAccount ){ $0 == "$" })
marbetschar commented
That did the trick! Thank you!!