O Android oferece suporte à emulação de cartão NFC com um elemento de segurança para emulação de cartão fora do host. Para mais informações, consulte Visão geral da emulação de cartão com base em host. No entanto, na plataforma Android, o serviço de pagamento preferencial especificado na configuração "Pagamento por aproximação" nem sempre é sincronizado com o app no elemento de segurança. Isso 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 oferece um mecanismo que permite sincronizar a configuração de pagamento no "Pagamento por aproximação", a configuração de roteamento no front-end por aproximação (CLF) e o estado selecionado pelo app no elemento de segurança.
O diagrama a seguir ilustra a arquitetura de design do recurso de sincronização de pagamentos externa.

Implementação
Para implementar o recurso de sincronização de pagamentos fora do host, o dispositivo precisa ter um controlador NFC compatível com o padrão NCI 2.0 e usar as estruturas do projeto de código aberto do Android NFC e da interface de programação de aplicativos móveis abertos (OMAPI, na sigla em inglês).
APIs do framework
Para implementar a sincronização de pagamentos fora do host, use as seguintes APIs de framework encontradas no Projeto de código aberto do Android:
getAidsForPreferredPaymentService()
: recupera os AIDs registrados para o serviço de pagamento preferido.getRouteDestinationForPreferredPaymentService()
: recupera o destino da rota para o serviço de pagamento preferido.getDescriptionForPreferredPaymentService()
: retorna uma descrição visível ao usuário do serviço de pagamento preferido.android.permission.NFC_PREFERRED_PAYMENT_INFO
(permissão): permite que os apps recebam informações sobre o serviço de pagamento preferido por NFC.android.nfc.action.PREFERRED_PAYMENT_CHANGED
(ação de transmissão): intent para notificar se o serviço de pagamento preferido mudou.
Validação
Para validar a implementação do recurso de sincronização de pagamentos fora do host, instale apps de elemento seguro com os elementos seguros correspondentes e verifique se há respostas adequadas de um leitor NFC em diferentes condições.