Android supporta l'emulazione di schede off-host, ovvero l'emulazione di schede NFC con un elemento sicuro. Per saperne di più, consulta la panoramica sull'emulazione di schede basata su host.
In alcuni casi d'uso, ad esempio quando si utilizza FeliCa per i trasporti, l'emulazione di schede off-host è consentita quando lo schermo di un dispositivo è bloccato o spento oppure quando il dispositivo è spento.
La tecnologia NFC sicura è una funzionalità introdotta in Android 10 che consente di attivare l'emulazione di schede 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 sicura nel file XML delle risorse NFC
con l'attributo config_skuSupportsSecureNfc.
API Framework
Per implementare la tecnologia NFC sicura, implementa le seguenti API framework disponibili in Android Open Source Project:
isSecureNfcSupported(): controlla se il dispositivo supporta la funzionalità NFC sicura.isSecureNfcEnabled(): controlla se la funzionalità NFC sicura è attiva.enableSecureNfc(boolean enable): attiva la funzionalità NFC sicura.
UI delle impostazioni
Nell'applicazione Impostazioni, aggiungi un pulsante di attivazione/disattivazione per consentire agli utenti di attivare e disattivare la funzionalità NFC sicura. Puoi personalizzare l'impostazione predefinita nell'applicazione Impostazioni in modo che sia attiva o disattivata.
La Figura 1 mostra un esempio di pulsante di attivazione/disattivazione per attivare e disattivare la tecnologia NFC sicura nell'app Impostazioni in Impostazioni > Dispositivi connessi > Preferenze di connessione > NFC > Richiedi lo sblocco del dispositivo per NFC.
Figura 1. Esempio di pulsante di attivazione/disattivazione per attivare e disattivare la tecnologia NFC sicura
Quando la tecnologia NFC sicura è attiva e un utente posiziona il dispositivo su un lettore NFC, Android visualizza 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 sicura e verifica che l'emulazione di schede NFC sia disattivata quando lo schermo del dispositivo è spento o bloccato e quando il dispositivo è spento.