passforios/passKit/Models/PasscodeLock.swift

36 lines
752 B
Swift
Raw Normal View History

2017-02-07 20:24:58 +08:00
//
// PasscodeLock.swift
// PassKit
2017-02-07 20:24:58 +08:00
//
// Created by Yishi Lin on 28/1/2018.
// Copyright © 2017 Yishi Lin. All rights reserved.
2017-02-07 20:24:58 +08:00
//
import Foundation
import LocalAuthentication
2017-02-07 20:24:58 +08:00
open class PasscodeLock {
public static let shared = PasscodeLock()
2018-12-09 16:59:07 -08:00
fileprivate let passcodeKey = "passcode.lock.passcode"
fileprivate var passcode: String? {
return SharedDefaults[.passcodeKey]
2017-02-07 20:24:58 +08:00
}
2018-12-09 16:59:07 -08:00
public var hasPasscode: Bool {
return passcode != nil
2017-02-07 20:24:58 +08:00
}
2018-12-09 16:59:07 -08:00
2017-02-07 20:24:58 +08:00
public func save(passcode: String) {
SharedDefaults[.passcodeKey] = passcode
2017-02-07 20:24:58 +08:00
}
2018-12-09 16:59:07 -08:00
2017-02-07 20:24:58 +08:00
public func check(passcode: String) -> Bool {
return self.passcode == passcode
}
2018-12-09 16:59:07 -08:00
2017-02-07 20:24:58 +08:00
public func delete() {
SharedDefaults[.passcodeKey] = nil
2017-02-07 20:24:58 +08:00
}
}