安全 NFC

Android 支持脫離主機卡模擬,這意味著帶有安全元件的 NFC 卡模擬。有關詳細信息,請參閱基於主機的卡模擬概述

在某些用例(例如使用FeliCa進行傳輸)中,當設備的屏幕被鎖定或關閉或設備關閉時,允許進行脫離主機卡模擬。

安全 NFC 是 Android 10 中引入的一項功能,它允許僅在設備屏幕解鎖時啟用脫離主機 NFC 卡模擬。實施此功能使用戶可以選擇啟用安全 NFC 以提高安全性。

執行

要實現安全 NFC 功能,設備必須具有支持 NCI 2.0 標準的 NFC 控制器,並且必須使用 Android 開源項目 (AOSP) NFC 框架。使用config_skuSupportsSecureNfc屬性在 NFC資源 XML 文件中添加支持安全 NFC 功能的硬件 ( ro.boot.hardware.sku )。

框架 API

要實現安全 NFC,請實現 Android 開源項目中的以下框架 API:

設置界面

在設置應用程序中,添加一個切換開關以允許用戶啟用和禁用安全 NFC 功能。您可以自定義設置應用程序中的默認設置以啟用或禁用。

圖 1 顯示了一個撥動開關示例,用於在Settings > Connected devices > Connection preferences > NFC > Require device unlock for NFC 中的 Settings 應用程序中啟用和禁用 Secure NFC

安全的 NFC UI 流程

圖 1.啟用和禁用安全 NFC 的示例切換開關

當啟用安全 NFC 並且用戶將設備放在 NFC 閱讀器上時,Android 會在鎖定屏幕上顯示解鎖以使用 NFC通知,如圖 2 所示。

安全 NFC 通知

圖 2.解鎖以在鎖定屏幕上使用 NFC 通知

驗證

要驗證您的實施,請啟用安全 NFC 功能並驗證在設備屏幕關閉或鎖定以及設備關閉時禁用 NFC 卡仿真。