Android supporta l'emulazione della scheda off-host, ovvero l'emulazione della scheda NFC con un elemento sicuro. Per ulteriori informazioni, vedere Panoramica sull'emulazione della scheda basata su host .
In alcuni casi d'uso, come l'utilizzo di FeliCa per il trasporto pubblico, l'emulazione della carta fuori host è consentita quando lo schermo di un dispositivo è bloccato o spento oppure quando un dispositivo è spento.
Secure NFC è una funzionalità introdotta in Android 10 che consente di abilitare l'emulazione della scheda NFC off-host solo quando lo schermo del dispositivo è sbloccato. L'implementazione di questa funzionalità offre agli utenti la possibilità di abilitare Secure NFC per una maggiore sicurezza.
Implementazione
Per implementare la funzionalità 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 funzionalità Secure NFC nel file XML delle risorse NFC con l'attributo config_skuSupportsSecureNfc
.
API del quadro
Per implementare Secure NFC, implementa le seguenti API framework presenti nel progetto Android Open Source:
-
isSecureNfcSupported()
: controlla se il dispositivo supporta la funzione Secure NFC. -
isSecureNfcEnabled()
: controlla se la funzione Secure NFC è abilitata. -
enableSecureNfc(boolean enable)
: abilita la funzione Secure NFC.
Interfaccia utente delle impostazioni
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 per abilitarla o disabilitarla.
La Figura 1 mostra un esempio di interruttore per abilitare e disabilitare Secure NFC nell'app Impostazioni in Impostazioni > Dispositivi connessi > Preferenze di connessione > NFC > Richiedi sblocco del dispositivo per NFC .
Figura 1. Esempio di interruttore 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 nella schermata di blocco, come mostrato nella Figura 2.
Figura 2. Sblocca per utilizzare la notifica NFC nella schermata di blocco
Validazione
Per convalidare l'implementazione, abilitare la funzionalità 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.