Android поддерживает эмуляцию карты NFC с безопасным элементом для эмуляции внешней карты. (Дополнительную информацию см. в разделе Обзор эмуляции карты на основе хоста .) Однако на платформе Android предпочтительный платежный сервис, указанный в настройке Tap & pay, не всегда синхронизируется с приложением в элементе безопасности. Это означает, что вместо предпочтительного платежного сервиса в безопасном элементе может использоваться непредпочтительная платежная услуга.
В Android 11 функция синхронизации платежей вне хоста предоставляет механизм, который позволяет синхронизировать конфигурацию платежей в Tap & Pay, конфигурацию маршрутизации на бесконтактном внешнем интерфейсе (CLF) и состояние, выбранное приложением, в безопасном элементе. .
Следующая диаграмма иллюстрирует архитектуру дизайна функции внешней синхронизации платежей.
Реализация
Для реализации функции синхронизации платежей за пределами хоста устройство должно иметь контроллер NFC, поддерживающий стандарт NCI 2.0, и должен использовать платформы Android Open Source Project NFC и Open Mobile Application Programming Interface (OMAPI).
API платформы
Чтобы внедрить синхронизацию платежей вне хоста, используйте следующие API-интерфейсы платформы, которые можно найти в Android Open Source Project:
-
getAidsForPreferredPaymentService()
: извлекает зарегистрированные AID для предпочтительной платежной службы. -
getRouteDestinationForPreferredPaymentService()
: извлекает пункт назначения маршрута для предпочтительной платежной службы. -
getDescriptionForPreferredPaymentService()
: возвращает видимое пользователю описание предпочтительного платежного сервиса. -
android.permission.NFC_PREFERRED_PAYMENT_INFO
(разрешение): позволяет приложениям получать информацию о предпочтительной платежной службе NFC. -
android.nfc.action.PREFERRED_PAYMENT_CHANGED
(вещательное действие): предназначено для уведомления об изменении предпочтительного платежного сервиса.
Проверка
Чтобы проверить реализацию функции синхронизации платежей за пределами хоста, установите приложения защищенных элементов с соответствующими безопасными элементами, а затем проверьте наличие соответствующих ответов от устройства чтения NFC в различных условиях.