Android obsługuje emulację karty NFC z elementem zabezpieczeń w celu emulacji karty poza hostem. Więcej informacji znajdziesz w artykule Omówienie emulacji kart hosta. Na platformie Android preferowana usługa płatności określona w ustawieniach Zbliż i zapłać nie jest jednak zawsze synchronizowana z aplikacją w elementach zabezpieczeń. Oznacza to, że w zabezpieczonym elemencie może zostać użyta niepreferowana usługa płatnicza zamiast preferowanej usługi płatniczej.
W Androidzie 11 funkcja synchronizacji płatności poza hostem udostępnia mechanizm, który umożliwia synchronizację konfiguracji płatności w aplikacji Zbliż i zapłać, konfiguracji routingu na interfejsie zbliżeniowym (CLF) oraz stanu wybranego przez aplikację w elementach zabezpieczeń.
Ten diagram przedstawia architekturę funkcji synchronizacji płatności poza hostem.
Implementacja
Aby zaimplementować funkcję synchronizacji płatności poza hostem, urządzenie musi mieć kontroler NFC obsługujący standard NCI 2.0 i wykorzystywać interfejsy Android Open Source Project NFC oraz Open Mobile Application Programming Interface (OMAPI).
Interfejsy Framework API
Aby zaimplementować synchronizację płatności poza hostem, użyj tych interfejsów API frameworku, które znajdziesz w projekcie Android Open Source:
getAidsForPreferredPaymentService()
: pobiera zarejestrowane identyfikatory AID dla preferowanej usługi płatności.getRouteDestinationForPreferredPaymentService()
: pobiera miejsce docelowe trasy dla preferowanej usługi płatniczej.getDescriptionForPreferredPaymentService()
: zwraca widoczny dla użytkownika opis preferowanej usługi płatności.android.permission.NFC_PREFERRED_PAYMENT_INFO
(zezwolenie): umożliwia aplikacjom otrzymywanie informacji o usłudze płatności preferowanej NFC.android.nfc.action.PREFERRED_PAYMENT_CHANGED
(działanie przesyłania): intencja powiadomienia, jeśli preferowana usługa płatnicza uległa zmianie.
Weryfikacja
Aby zweryfikować implementację funkcji synchronizacji płatności poza hostem, zainstaluj aplikacje Secure Element z odpowiednimi elementami zabezpieczeń i sprawdź, czy czytnik NFC reaguje odpowiednio w różnych warunkach.