中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

iOSTouchID身份認證

iOS Touch ID 身份認證

十余年的武陵源網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。營銷型網站的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整武陵源建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。創新互聯從事“武陵源網站設計”,“武陵源網站推廣”以來,每個客戶項目都認真落實執行。

iOS 8 及以后錄了指紋的設備可以使用 touch ID 進行身份認證,指紋符合錄入的指紋才能認證成功。

步驟

  1. 導入 LocalAuthentication 框架:import LocalAuthentication
  2. 初始化 LAContext 對象:let context = LAContext()
  3. 調用 LAContext 對象的 canEvaluatePolicy(_ policy: LAPolicy, error: NSErrorPointer) -> Bool方法
  4. 上一步如果返回 false,表示不能進行認證,執行相應的失敗操作;如果返回 true,調用 LAContext 對象的evaluatePolicy(_ policy: LAPolicy, localizedReason: String, reply: @escaping (Bool, Error?) -> Void)方法,在 reply 中判斷是否認證成功來執行相應的操作(如果認證失敗,可以獲取錯誤碼 code,看看屬于 LAError.Code 的哪種類型錯誤來執行相應的失敗操作)

調用 LAContext 對象的 canEvaluatePolicy 和 evaluatePolicy 方法都要傳入 LAPolicy 枚舉類型的值,目前有兩種取值:deviceOwnerAuthenticationWithBiometrics 和 deviceOwnerAuthentication。前一種 deviceOwnerAuthenticationWithBiometrics 是進行指紋認證。后一種 deviceOwnerAuthentication 是 iOS 9.0 及以后才能使用,先進行指紋認證,如果指紋認證失敗可以通過輸入密碼進行認證。

調用 LAContext 對象的 evaluatePolicy 方法會彈出指紋認證對話框。對話框會顯示需要進行認證的原因(String),就是 localizedReason 參數的值。對話框有取消按鈕,iOS 10.0 及以后可以設置 LAContext 對象的 localizedCancelTitle 的值來改變取消按鈕顯示的字。如果指紋認證失敗,對話框還會顯示 fallback 按鈕,可以設置 LAContext 對象的 localizedFallbackTitle 的值來改變 fallback 按鈕顯示的字。

需要注意,evaluatePolicy 方法的 reply 回調不在主線程。如果需要更新 UI 的話,要調用主線程再更新。

代碼示例

代碼已上傳GitHub:https://github.com/Silence-GitHub/TouchIDDemo

在控制器中放置一個 label 顯示認證返回結果。

指紋認證代碼

let context = LAContext()
context.localizedFallbackTitle = "Fall back button"
if #available(iOS 10.0, *) {
 context.localizedCancelTitle = "Cancel button"
}
var authError: NSError?
if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &authError) {
 context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: "Localized reason for authentication with biometrics", reply: { (success, evaluateError) in
 // NOT in main thread
 DispatchQueue.main.async {
 if success {
 self.label.text = "Success"
 // Do something success
 } else if let error = evaluateError {
 self.label.text = error.localizedDescription
 // Deal with error
 if let code = LAError.Code(rawValue: (error as NSError).code) {
  switch code {
  case .userFallback:
  print("fall back button clicked")
  default:
  break
  }
 }
 }
 } 
 })
} else if let error = authError {
 label.text = error.localizedDescription
 // Deal with error
}

指紋和密碼認證代碼

if #available(iOS 9.0, *) {
 let context = LAContext()
 context.localizedFallbackTitle = "Fall back button"
 if #available(iOS 10.0, *) {
 context.localizedCancelTitle = "Cancel button"
 }
 var authError: NSError?
 if context.canEvaluatePolicy(.deviceOwnerAuthentication, error: &authError) {
 context.evaluatePolicy(.deviceOwnerAuthentication, localizedReason: "Localized reason for authentication", reply: { (success, evaluateError) in
 // NOT in main thread
 DispatchQueue.main.async {
 if success {
  self.label.text = "Success"
  // Do something success
 } else if let error = evaluateError {
  self.label.text = error.localizedDescription
  // When fall back button clicked, user is required to enter PIN. Error code will not be "userFallback"
  // Deal with error
 }
 }
 })
 } else if let error = authError {
 label.text = error.localizedDescription 
 // Deal with error
 }
} else {
 let alert = UIAlertController(title: nil, message: "Authentication is available on iOS 9.0 or later", preferredStyle: .alert)
 alert.addAction(UIAlertAction(title: "OK", style: .default, handler: nil))
 present(alert, animated: true, completion: nil)
}

以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持創新互聯!

本文題目:iOSTouchID身份認證
文章轉載:http://www.2m8n56k.cn/article28/jcgcjp.html

成都網站建設公司_創新互聯,為您提供虛擬主機、Google、網頁設計公司靜態網站、網站策劃、云服務器

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
主站蜘蛛池模板: 99视频精品全国在线观看 | 日韩亚洲欧美一区二区三区 | 中文字幕日韩精品中文区 | 久久久小视频 | 精品一区二区三区亚洲 | 国产精品国产亚洲精品看不卡 | 国产精品手机视频一区二区 | 我看毛片 | 日韩美女一级片 | 国产成人经典三级在线观看 | 欧美视频三区 | 精品国产成人综合久久小说 | 18video9ex欧美生活片 | 国产最猛性xxxxxx69交 | 欧美成人乱弄视频 | 免费人成年短视频在线观看网站 | 看真人一级毛片 | 亚洲天堂伊人 | 日本在线观看一级高清片 | 九久久| 一级视频在线观看 | 91精品国产美女福到在线不卡 | 久久国产精品夜色 | 性做久久久久久久免费看 | 亚洲欧美日韩精品久久亚洲区色播 | 国产成人女人在线视频观看 | 国产精品自拍视频 | 日本午夜人成免费视频 | 欧美特黄一级片 | 一级毛片真人免费播放视频 | 理论片黄色| 国产午夜精品久久理论片小说 | 欧美丰满大乳大屁股毛片 | 精品欧美高清一区二区免费 | 欧美成人私人视频88在线观看 | 日本在线加勒比 | 欧美成人亚洲 | 性xxx69xxx视频在线观看 | 日本手机在线视频 | 国产精品手机在线 | 免费国产成人高清视频网站 |