O Android oferece suporte à emulação de cartão NFC com um elemento seguro para emulação de cartão fora do host. (Para obter mais informações, consulte Visão geral da emulação de cartão baseada em host .) No entanto, na plataforma Android, o serviço de pagamento preferencial especificado na configuração Tocar e pagar nem sempre é sincronizado com o aplicativo no elemento seguro. Isto significa que é possível que um serviço de pagamento não preferencial no elemento seguro seja usado em vez do serviço de pagamento preferencial.
No Android 11, o recurso de sincronização de pagamento fora do host fornece um mecanismo que permite sincronizar a configuração de pagamento no Tap & pay, a configuração de roteamento no front-end sem contato (CLF) e o estado selecionado do aplicativo no elemento seguro .
O diagrama a seguir ilustra a arquitetura de design do recurso de sincronização de pagamentos fora do host.
Implementação
Para implementar o recurso de sincronização de pagamento fora do host, o dispositivo deve ter um controlador NFC que suporte o padrão NCI 2.0 e deve usar as estruturas Android Open Source Project NFC e Open Mobile Application Programming Interface (OMAPI).
APIs de estrutura
Para implementar a sincronização de pagamentos fora do host, use as seguintes APIs de estrutura encontradas no Android Open Source Project:
-
getAidsForPreferredPaymentService()
: Recupera os AIDs registrados para o serviço de pagamento preferencial. -
getRouteDestinationForPreferredPaymentService()
: recupera o destino da rota para o serviço de pagamento preferencial. -
getDescriptionForPreferredPaymentService()
: Retorna uma descrição visível ao usuário do serviço de pagamento preferencial. -
android.permission.NFC_PREFERRED_PAYMENT_INFO
(permissão): permite que aplicativos recebam informações do serviço de pagamento preferencial NFC. -
android.nfc.action.PREFERRED_PAYMENT_CHANGED
(ação de transmissão): intenção de notificar se o serviço de pagamento preferencial foi alterado.
Validação
Para validar sua implementação do recurso de sincronização de pagamento fora do host, instale aplicativos de elementos seguros com elementos seguros correspondentes e, em seguida, verifique as respostas apropriadas de um leitor NFC em diferentes condições.