Android supporta l'emulazione di carte off-host, ovvero l'emulazione di carte NFC con un elemento sicuro. Per ulteriori informazioni, consulta la panoramica dell'emulazione delle schede basata sull'host.
In alcuni casi d'uso, come l'utilizzo di FeliCa per il trasporto pubblico, l'emulazione della carta fuori dall'host è consentita quando lo schermo di un dispositivo è bloccato o spento oppure quando il dispositivo è spento.
L'NFC sicura è una funzionalità introdotta in Android 10 che consente di attivare l'emulazione delle carte NFC off-host solo quando lo schermo del dispositivo è sbloccato. L'implementazione di questa funzionalità offre agli utenti la possibilità di attivare la tecnologia NFC sicura per una maggiore sicurezza.
Implementazione
Per implementare la funzionalità NFC sicura, il dispositivo deve avere un controller NFC che supporti lo standard NCI 2.0 e deve utilizzare il framework NFC di Android Open Source Project (AOSP). Aggiungi l'hardware (ro.boot.hardware.sku
) che supporta la funzionalità NFC sicuro nel file XML delle risorse NFC con l'attributo config_skuSupportsSecureNfc
.
API del framework
Per implementare la tecnologia NFC sicura, implementa le seguenti API di framework disponibili nel progetto Android Open Source:
isSecureNfcSupported()
: controlla se il dispositivo supporta la funzionalità NFC sicura.isSecureNfcEnabled()
: controlla se la funzionalità NFC sicura è attivata.enableSecureNfc(boolean enable)
: attiva la funzionalità NFC sicura.
Interfaccia utente delle impostazioni
Nell'applicazione Impostazioni, aggiungi un pulsante di attivazione/disattivazione per consentire agli utenti di attivare e disattivare la funzionalità NFC protetto. Puoi personalizzare l'impostazione predefinita nell'applicazione Impostazioni in modo che sia attivata o disattivata.
La Figura 1 mostra un esempio di interruttore per attivare e disattivare NFC sicuro nell'app Impostazioni in Impostazioni > Dispositivi connessi > Preferenze di connessione > NFC > Richiedi sblocco del dispositivo per NFC.
Figura 1. Esempio di pulsante di attivazione/disattivazione della tecnologia NFC sicura
Quando NFC protetto è attivo e un utente appoggia il dispositivo su un lettore NFC, Android mostra la notifica Sblocca per usare NFC nella schermata di blocco, come mostrato nella Figura 2.
Figura 2. Notifica Sblocca per usare NFC nella schermata di blocco
Convalida
Per convalidare l'implementazione, attiva la funzionalità NFC sicuro e verifica che l'emulazione della carta NFC sia disattivata quando lo schermo del dispositivo è spento o bloccato e quando il dispositivo è spento.