Android unterstützt die Off-Host-Kartenemulation, also die NFC-Kartenemulation mit einem sicheren Element. Weitere Informationen finden Sie unter Übersicht über die hostbasierte Kartenemulation .
In bestimmten Anwendungsfällen, beispielsweise bei der Verwendung von FeliCa im öffentlichen Nahverkehr, ist die Off-Host-Kartenemulation zulässig, wenn der Bildschirm eines Geräts gesperrt oder ausgeschaltet ist oder wenn ein Gerät ausgeschaltet ist.
Secure NFC ist eine in Android 10 eingeführte Funktion, die die Aktivierung der Off-Host-NFC-Kartenemulation nur dann ermöglicht, wenn der Bildschirm des Geräts entsperrt ist. Durch die Implementierung dieser Funktion haben Benutzer die Möglichkeit, Secure NFC für mehr Sicherheit zu aktivieren.
Implementierung
Um die Secure NFC-Funktion zu implementieren, muss das Gerät über einen NFC-Controller verfügen, der den NCI 2.0-Standard unterstützt, und das NFC-Framework des Android Open Source Project (AOSP) verwenden. Fügen Sie die Hardware ( ro.boot.hardware.sku
), die die Secure NFC-Funktion unterstützt, in der NFC- Ressourcen-XML-Datei mit dem Attribut config_skuSupportsSecureNfc
hinzu.
Framework-APIs
Um Secure NFC zu implementieren, implementieren Sie die folgenden Framework-APIs aus dem Android Open Source Project:
-
isSecureNfcSupported()
: Prüft, ob das Gerät die Secure NFC-Funktion unterstützt. -
isSecureNfcEnabled()
: Prüft, ob die Secure NFC-Funktion aktiviert ist. -
enableSecureNfc(boolean enable)
: Aktiviert die Secure NFC-Funktion.
Benutzeroberfläche für Einstellungen
Fügen Sie in der Anwendung „Einstellungen“ einen Kippschalter hinzu, damit Benutzer die Secure NFC-Funktion aktivieren und deaktivieren können. Sie können die Standardeinstellung in der Anwendung „Einstellungen“ so anpassen, dass sie entweder aktiviert oder deaktiviert wird.
Abbildung 1 zeigt ein Beispiel eines Kippschalters zum Aktivieren und Deaktivieren von Secure NFC in der Einstellungen-App unter Einstellungen > Verbundene Geräte > Verbindungseinstellungen > NFC > Geräteentsperrung für NFC erforderlich .
Abbildung 1. Beispiel eines Kippschalters zum Aktivieren und Deaktivieren von Secure NFC
Wenn Secure NFC aktiviert ist und ein Benutzer das Gerät auf ein NFC-Lesegerät legt, zeigt Android die Benachrichtigung „Zur Verwendung von NFC entsperren“ auf dem Sperrbildschirm an, wie in Abbildung 2 dargestellt.
Abbildung 2. Entsperren, um NFC-Benachrichtigung auf dem Sperrbildschirm zu verwenden
Validierung
Um Ihre Implementierung zu validieren, aktivieren Sie die Secure NFC-Funktion und stellen Sie sicher, dass die NFC-Kartenemulation deaktiviert ist, wenn der Bildschirm des Geräts ausgeschaltet oder gesperrt ist und wenn das Gerät ausgeschaltet ist.