48 lines
1.3 KiB
Swift
48 lines
1.3 KiB
Swift
//
|
|
// IDUtil.swift
|
|
// 武极天下
|
|
//
|
|
// Created by zhl on 2020/6/17.
|
|
// Copyright © 2020 egret. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
public class IDUtil: NSObject{
|
|
static let serviceName = "Wjtx"
|
|
static let accessGroup: String? = nil
|
|
static let accountName = "wjtx_uid"
|
|
|
|
public static func getUid() -> String {
|
|
let id = getSavedUid()
|
|
if (id != "") {
|
|
return id
|
|
}
|
|
let strIDFV = UIDevice.current.identifierForVendor!.uuidString.lowercased();
|
|
saveUid(uid: strIDFV)
|
|
return strIDFV;
|
|
}
|
|
|
|
static func saveUid(uid: String) {
|
|
do {
|
|
let passwordItem = KeychainPasswordItem(service: serviceName, account: accountName, accessGroup: accessGroup)
|
|
try passwordItem.savePassword(uid)
|
|
} catch {
|
|
print("Error updating keychain - \(error)")
|
|
}
|
|
}
|
|
|
|
static func getSavedUid() -> String {
|
|
do {
|
|
let passwordItem = KeychainPasswordItem(service: serviceName, account: accountName, accessGroup: accessGroup)
|
|
let password = try passwordItem.readPassword()
|
|
return password
|
|
} catch {
|
|
print("Error reading password from keychain - \(error)")
|
|
return ""
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|