Android supporta l'emulazione della scheda off-host, il che significa l'emulazione della scheda NFC con un elemento sicuro. Per ulteriori informazioni, consulta Panoramica sull'emulazione delle schede basata su host .
In alcuni casi d'uso come l'utilizzo di FeliCa per il transito, l'emulazione della scheda fuori host è consentita quando lo schermo di un dispositivo è bloccato o spento o quando un dispositivo è spento.
Secure NFC è una funzionalità introdotta in Android 10 che consente di abilitare l'emulazione della scheda NFC fuori host solo quando lo schermo del dispositivo è sbloccato. L'implementazione di questa funzione offre agli utenti la possibilità di abilitare Secure NFC per una maggiore sicurezza.
Implementazione
Per implementare la funzione Secure NFC, il dispositivo deve disporre di un controller NFC che supporti lo standard NCI 2.0 e deve utilizzare il framework NFC Android Open Source Project (AOSP). Aggiungi l'hardware ( ro.boot.hardware.sku
) che supporta la funzione Secure NFC nel file XML della risorsa NFC con l'attributo config_skuSupportsSecureNfc
.
API della struttura
Per implementare Secure NFC, implementa le seguenti API framework trovate nel progetto Android Open Source:
-
isSecureNfcSupported()
: verifica se il dispositivo supporta la funzione Secure NFC. -
isSecureNfcEnabled()
: verifica se la funzione Secure NFC è abilitata. -
enableSecureNfc(boolean enable)
: abilita la funzione Secure NFC.
Impostazioni dell'interfaccia utente
Nell'applicazione Impostazioni, aggiungi un interruttore per consentire agli utenti di abilitare e disabilitare la funzione Secure NFC. È possibile personalizzare l'impostazione predefinita nell'applicazione Impostazioni in modo che sia abilitata o disabilitata.
La figura 1 mostra un esempio di interruttore per abilitare e disabilitare Secure NFC nell'app Impostazioni in Impostazioni > Dispositivi collegati > Preferenze di connessione > NFC > Richiedi sblocco dispositivo per NFC .
Figura 1. Esempio di interruttore a levetta per abilitare e disabilitare Secure NFC
Quando Secure NFC è abilitato e un utente posiziona il dispositivo su un lettore NFC, Android visualizza la notifica Sblocca per utilizzare NFC sulla schermata di blocco, come mostrato nella Figura 2.
Figura 2. Sblocca per utilizzare la notifica NFC nella schermata di blocco
Convalida
Per convalidare l'implementazione, abilitare la funzione Secure NFC e verificare che l'emulazione della scheda NFC sia disabilitata quando lo schermo del dispositivo è spento o bloccato e quando il dispositivo è spento.