O recurso Acesso rápido à carteira, disponível a partir do Android 11, permite que o usuário acesse cartões de pagamento e passes relevantes diretamente do menu liga/desliga. Os principais casos de uso incluem selecionar a forma de pagamento adequada antes de realizar uma transação em um terminal NFC e acessar rapidamente voos e outros passes para eventos futuros.
No Android 12 e mais recentes, o recurso Acesso rápido à carteira está disponível na aba, como mostrado nas Figuras 1 e 2.
![]() |
![]() |
No Android 11, o recurso está disponível no menu liga/desliga, como mostrado na Figura 3.

Requisitos
Seu dispositivo precisa ter NFC para usar o recurso de acesso rápido à Carteira. O recurso
se vincula ao QuickAccessWalletService
do app de pagamento NFC padrão, o que significa
que o dispositivo também precisa oferecer suporte à emulação de cartão com base em host (HCE).
Visão geral do recurso
A Carteira de acesso rápido tem duas partes: a interface e o provedor de cards.
No Android 12 ou versões mais recentes, a interface da carteira é executada na interface
do sistema e está localizada em
frameworks/base/packages/SystemUI/src/com/android/systemui/wallet
. No
Android 11, a interface da Carteira, localizada em
platform/packages/apps/QuickAccessWallet
,
precisa ser instalada e incluída na lista de permissões.
O provedor de cartão de acesso rápido à carteira é o app de pagamento por aproximação padrão. Os usuários podem
ter vários apps de pagamento por aproximação instalados simultaneamente, mas apenas o app padrão
pode mostrar cartões no menu liga/desliga. Você pode especificar qual app de pagamento por NFC será definido como padrão inicialmente, mas os usuários podem selecionar um app diferente nas Configurações. Se apenas um app de pagamento por NFC estiver instalado, ele será definido como padrão automaticamente (consulte CardEmulationManager
).
Implementação
Para fornecer cartões à interface de acesso rápido da Carteira, os apps de pagamento por NFC
precisam implementar
QuickAccessWalletService
.
Os apps de pagamento precisam incluir uma entrada de manifesto anunciando o serviço.
Para garantir que apenas a interface do sistema possa se vincular ao QuickAccessWalletService
, o
app de pagamento por NFC precisa exigir a permissão
android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE
. Exigir essa
permissão garante que
apenas a interface do sistema possa se vincular a QuickAccessWalletService
.
<service
android:name=".MyQuickAccessWalletService"
android:label="@string/my_default_tile_label"
android:icon="@drawable/my_default_icon_label"
android:logo="@drawable/my_wallet_logo"
android:permission="android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE">
<intent-filter>
<action android:name="android.service.quickaccesswallet.QuickAccessWalletService" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="android.quickaccesswallet"
android:resource="@xml/quickaccesswallet_configuration" />
<meta-data
android:name="android.quickaccesswallet.tile"
android:resource="@drawable/my_default_tile_icon"/>
</service>
Outras informações sobre a carteira estão incluídas no arquivo XML vinculado:
<quickaccesswallet-service
xmlns:android="http://schemas.android.com/apk/res/android"
android:settingsActivity="com.example.android.SettingsActivity"
android:shortcutLongLabel="@string/my_wallet_empty_state_text"
android:shortcutShortLabel="@string/my_wallet_button_text"
android:targetActivity="com.example.android.WalletActivity"/>
Em seguida, o app de pagamento precisa implementar QuickAccessWalletService
:
public class MyQuickAccessWalletService extends QuickAccessWalletService {
@Override
public void onWalletCardsRequested(
GetWalletCardsRequest request,
GetWalletCardsCallback callback) {
GetWalletCardsResponse response = // generate response
callback.onSuccess(response);
}
@Override
public void onWalletCardSelected(SelectWalletCardRequest request) {
// selecting a card should ensure that it is used when making an NFC payment
}
@Override
public void onWalletDismissed() {
// May un-select card if the wallet app has the concept of a 'default'
// payment method
}
}
Se HostApduService
começar a processar uma transação NFC e, como consequência,
iniciar uma atividade para mostrar o progresso e o resultado do pagamento, ele também
tentará receber uma referência ao QuickAccessWalletService
vinculado e chamar
QuickAccessWalletService#sendEvent
com um tipo de evento
TYPE_NFC_PAYMENT_STARTED
. Isso faz com que a interface de acesso rápido da Carteira seja
dispensada, permitindo que o usuário tenha uma visão desimpedida da atividade de pagamento.
Para mais documentação sobre a implementação de QuickAccessWalletService
, consulte
QuickAccessWalletService
e o
teste do CTS TestQuickAccessWalletService
.
Ativar a interface de acesso rápido à Carteira no Android 11
Para configurar o Acesso rápido à carteira para que ele fique disponível no menu liga/desliga
do Android 11, inclua o destino
QuickAccessWallet
na build e ative o plug-in globalactions.wallet
adicionando
a linha em negrito no exemplo de código abaixo ao arquivo
overlay/frameworks/base/packages/SystemUI/res/values/config.xml
.
<resources> ... <!-- SystemUI Plugins that can be loaded on user builds. --> <string-array name="config_pluginWhitelist" translatable="false"> <item>com.android.systemui</item> <item>com.android.systemui.plugin.globalactions.wallet</item> </string-array> </resources>
Especifique o app padrão de pagamento por aproximação no
arquivo de configuração de configurações
usando def_nfc_payment_component
.
O app de pagamento por aproximação padrão precisa expor
QuickAccessWalletService
para fornecer cartões à Carteira de acesso rápido. Se o app padrão de pagamento por aproximação
não exportar esse serviço, a interface da carteira vai ficar oculta.
Detalhes da implementação do QuickAccessWalletService
QuickAccessWalletService
tem três métodos abstratos que precisam ser implementados: onWalletCardsRequested
, onWalletCardSelected
e onWalletDismissed
. O diagrama de sequência abaixo ilustra uma sequência de chamadas quando a Carteira de acesso rápido é visualizada imediatamente antes de um pagamento por NFC.

Nem todas as visualizações do Acesso rápido à carteira são seguidas por um pagamento por NFC, mas
a Figura 4 acima ilustra todos os recursos do
QuickAccessWalletService
. Neste exemplo, o provedor do card de acesso rápido à Carteira
implementa os elementos destacados em azul. Presume-se que os cartões de pagamento sejam armazenados no dispositivo em um banco de dados e acessados por uma interface chamada PaymentCardManager
. Além disso, presume-se que uma atividade
chamada PaymentActivity
mostre o resultado de um pagamento por NFC. O fluxo
segue da seguinte forma:
- O usuário faz um gesto para abrir o Acesso rápido à carteira.
A interface da Carteira de acesso rápido (parte da interface do sistema) verifica o gerenciador de pacotes para saber se o app padrão de pagamento por aproximação exporta
QuickAccessWalletService
.- Se o serviço não for exportado, a Carteira de acesso rápido não será mostrada.
A interface do usuário de acesso rápido à Carteira se vincula ao
QuickAccessWalletService
e chamaonWalletCardsRequested
. Esse método recebe um objeto de solicitação com dados sobre o número e o tamanho dos cards que podem ser fornecidos e um callback. O callback pode ser chamado de uma linha de execução em segundo plano.O
QuickAccessWalletService
calcula os cards que quer mostrar e chama o métodoonSuccess
no callback fornecido. É recomendado que o serviço execute essas ações em uma linha de execução em segundo plano.Assim que os cards são mostrados, a interface do sistema notifica
QuickAccessWalletService
que o primeiro card foi selecionado chamandoonWalletCardSelected
.onWalletCardSelected
é chamado sempre que o usuário seleciona um novo card.onWalletCardSelected
pode ser chamado mesmo que o cartão selecionado no momento não tenha mudado.
Quando o usuário dispensa a Carteira de acesso rápido, a interface do sistema notifica
QuickAccessWalletService
chamandoonWalletDismissed
.
No exemplo acima, o usuário aproxima o smartphone de um terminal de pagamento por NFC enquanto a carteira está sendo mostrada. Um componente essencial do processamento de pagamentos por NFC é o HostApduService
, que precisa ser implementado para processar APDUs fornecidas pelo leitor de NFC. Para mais informações, consulte Emulação de cartão com base no host.
Supõe-se que o app de pagamento inicie uma atividade para mostrar o progresso e
o resultado da interação com o terminal NFC. No entanto, a interface de acesso rápido
da Carteira é mostrada na parte de cima da janela do app, o que significa que a
atividade de pagamento fica obscurecida pela interface de acesso rápido da Carteira. Para corrigir isso, o
app precisa notificar a interface do sistema de que a interface de acesso rápido à Carteira deve ser
dispensada. Para isso, ele precisa receber uma referência ao QuickAccessWalletService
vinculado e chamar sendWalletServiceEvent
com o tipo de evento TYPE_NFC_PAYMENT_STARTED
.
Exemplo de implementação do QuickAccessWalletService
/** Sample implementation of {@link QuickAccessWalletService} */
@RequiresApi(VERSION_CODES.R)
public class MyQuickAccessWalletService extends QuickAccessWalletService {
private static final String TAG = "QAWalletSvc";
private ExecutorService executor;
private PaymentCardManager paymentCardManager;
@Override
public void onCreate() {
super.onCreate();
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
Log.w(TAG, "Should not run on pre-R devices");
stopSelf();
return;
}
executor = Executors.newSingleThreadExecutor();
paymentCardManager = new PaymentCardManager();
}
@Override
public void onDestroy() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
return;
}
executor.shutdownNow();
}
@Override
public void onWalletCardsRequested(
@NonNull GetWalletCardsRequest request, @NonNull GetWalletCardsCallback callback) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
return;
}
executor.submit(
() -> {
List<PaymentCard> paymentCards = paymentCardManager.getCards();
int maxCards = Math.min(paymentCards.size(), request.getMaxCards());
List<WalletCard> walletCards = new ArrayList<>(maxCards);
int selectedIndex = 0;
int cardWidthPx = request.getCardWidthPx();
int cardHeightPx = request.getCardHeightPx();
for (int index = 0; index < maxCards; index++) {
PaymentCard paymentCard = paymentCards.get(index);
WalletCard walletCard =
new WalletCard.Builder(
paymentCard.getCardId(),
paymentCard.getCardImage(cardWidthPx, cardHeightPx),
paymentCard.getContentDescription(),
paymentCard.getPendingIntent())
.build();
walletCards.add(walletCard);
if (paymentCard.isSelected()) {
selectedIndex = index;
}
}
GetWalletCardsResponse response =
new GetWalletCardsResponse(walletCards, selectedIndex);
callback.onSuccess(response);
});
}
@Override
public void onWalletCardSelected(@NonNull SelectWalletCardRequest request) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
return;
}
executor.submit(
() -> paymentCardManager.selectCardById(request.getCardId()));
}
@Override
public void onWalletDismissed() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R) {
return;
}
executor.submit(() -> {
paymentCardManager.removeCardOverrides();
});
}
}
Para mais detalhes sobre QuickAccessWalletService
, consulte a
referência da API QuickAccessWalletService
.
Permissões
A entrada de manifesto para QuickAccessWalletService
precisa exigir a permissão
android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE
introduzida no
Android 11. Essa é uma permissão no nível da assinatura mantida
pela interface do sistema, o que significa que
somente o processo da interface do sistema pode se vincular a implementações de
QuickAccessWalletService
. Apps transferidos por sideload podem reivindicar essa permissão e ter acesso total aos dados de QuickAccessWalletService
em dispositivos com Android 10 ou versões anteriores. Para evitar isso, é recomendável que o serviço
verifique a versão do build em onCreate
e ative o serviço apenas em dispositivos
com o Android 11 ou versões mais recentes. Nenhuma outra permissão de app
é necessária além daquelas necessárias para fornecer serviços
de pagamento por emulação de cartão host.
Se o app de pagamento NFC padrão não implementar ou exportar
QuickAccessWalletService
, a interface de acesso rápido da Carteira não será mostrada.
Configurações no Android 12
Para ativar ou desativar o Acesso rápido à Carteira na tela de bloqueio, os usuários podem usar a opção Mostrar carteira em Configurações > Tela > Tela de bloqueio. Para desativar a carteira na tela de atalho, os usuários precisam editar manualmente nas configurações rápidas.
Figura 5. Mostrar a chave da carteira na página "Tela de bloqueio" das Configurações.
Configurações no Android 11
Os usuários podem desativar o recurso Acesso rápido à Carteira no app Configurações. A página de configurações está em Configurações > Sistema > Gestos > Cartões e passes.

Personalização
Adicionar a visualização de acesso rápido à Carteira em outro local na interface do sistema
A
interface de acesso rápido da Carteira
é criada como um
plug-in do sistema.
Embora a implementação do AOSP use esse recurso em
GlobalActionsDialog
(mostrado ao pressionar o botão liga/desliga por muito tempo), é possível mover o recurso para outro gesto
desde que você mantenha o contrato especificado pela interface do plug-in.
public interface GlobalActionsPanelPlugin extends Plugin {
/** Invoked when the view is shown */
PanelViewController onPanelShown(Callbacks callbacks, boolean deviceLocked);
/** Callbacks for interacting with the view container */
interface Callbacks {
/** Dismisses the view */
void dismissGlobalActionsMenu();
/** Starts a PendingIntent, dismissing the keyguard if necessary. */
void startPendingIntentDismissingKeyguard(PendingIntent pendingIntent);
}
/** Provides the Quick Access Wallet view */
interface PanelViewController {
/** Returns the QuickAccessWallet view, which may take any size */
View getPanelContent();
/** Invoked when the view is dismissed */
void onDismissed();
/** Invoked when the device is either locked or unlocked. */
void onDeviceLockStateChanged(boolean locked);
}
}
A
interface do usuário de acesso rápido à Carteira
implementa GlobalActionsPanelPlugin
e PanelViewController
.
GlobalActionsDialog
recebe uma instância do plug-in da carteira usando
com.android.systemui.Dependency
:
GlobalActionsPanelPlugin mPanelPlugin =
Dependency.get(ExtensionController.class)
.newExtension(GlobalActionsPanelPlugin.class)
.withPlugin(GlobalActionsPanelPlugin.class)
.build()
.get();
Depois de verificar se o plug-in não é nulo e se o PanelViewController
retornado por onPanelShown
não é nulo, a caixa de diálogo anexa o View
fornecido por getPanelContent
ao próprio View
e fornece callbacks adequados para eventos do sistema.
// Construct a Wallet PanelViewController.
// `this` implements GlobalActionsPanelPlugin.Callbacks
GlobalActionsPanelPlugin.PanelViewController mPanelController =
mPanelPlugin.onPanelShown(this, !mKeyguardStateController.isUnlocked());
// Attach the view
FrameLayout panelContainer = findViewById(R.id.my_panel_container);
FrameLayout.LayoutParams panelParams =
new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_PARENT,
FrameLayout.LayoutParams.MATCH_PARENT);
panelContainer.addView(mPanelController.getPanelContent(), panelParams);
// Respond to unlock events (if the view can be accessed while the phone is locked)
keyguardStateController.addCallback(new KeyguardStateController.Callback() {
@Override
public void onUnlockedChanged() {
boolean unlocked = keyguardStateController.isUnlocked()
|| keyguardStateController.canDismissLockScreen();
mPanelController.onDeviceLockStateChanged(unlocked);
}
});
// Implement GlobalActionsPanelPlugin.Callbacks
@Override
public void dismissGlobalActionsMenu() {
dismissDialog();
}
@Override
public void startPendingIntentDismissingKeyguard(PendingIntent pendingIntent) {
mActivityStarter.startPendingIntentDismissingKeyguard(pendingIntent);
}
// Notify the wallet when the container view is dismissed
mPanelController.onDismissed();
Para remover o Acesso rápido à carteira do menu liga/desliga, omita o
destino QuickAccessWallet
do build do sistema. Para remover a Carteira de acesso rápido do menu liga/desliga, mas adicioná-la a outra visualização fornecida pela interface do sistema, inclua o destino de build e remova as referências a GlobalActionsPanelPlugin
de GlobalActionsImpl
.
Definir configurações padrão
Android 12
No Android 12 ou versões mais recentes, o Acesso rápido à carteira
está sempre visível na aba de configurações rápidas. A visibilidade da Carteira de acesso rápido na tela de bloqueio é controlada pela seguinte configuração segura: LOCKSCREEN_SHOW_WALLET
. Essa configuração controla se o ícone da Carteira de acesso rápido
aparece na parte de baixo à direita da tela de bloqueio. Essa configuração é definida como
true
por padrão, mas pode ser desativada pelo usuário em Configurações >
Tela > Tela de bloqueio > Mostrar carteira.
Android 11
No Android 11, a visibilidade do acesso rápido à Carteira é controlada por duas configurações seguras: GLOBAL_ACTIONS_PANEL_ENABLED
e GLOBAL_ACTIONS_PANEL_AVAILABLE
. A configuração
AVAILABLE
controla se o recurso pode ser ativado e desativado em
Configurações. Essa configuração é definida como true
por
WalletPluginService
.
Se QuickAccessWallet
não estiver incluído no build, a configuração vai permanecer
false
. A configuração ENABLED
é definida como true
por padrão no mesmo lugar, mas pode ser desativada pelo usuário nas configurações. Para mudar o comportamento padrão, modifique WalletPluginService#enableFeatureInSettings
.
Validação
Para validar sua implementação da Carteira de acesso rápido, execute testes manuais e do CTS. As mudanças no plug-in também precisam exercitar os testes robolectric incluídos.
Testes do CTS
Execute os testes do CTS localizados em
cts/tests/quickaccesswallet
.
Testes manuais para Android 12
Para testar os recursos principais da Carteira de acesso rápido, é necessário um terminal de pagamento por aproximação (real ou falso) e um app de pagamento por aproximação que implemente QuickAccessWalletService
(app de carteira). Os principais recursos que precisam ser testados incluem: disponibilidade, estado zero, seleção de cartão e comportamento da tela de bloqueio.
Disponibilidade
- Se o app de pagamento NFC padrão não for compatível com o recurso, a Carteira de acesso rápido não estará acessível nas configurações rápidas nem na tela de bloqueio.
- Se o app padrão de pagamento por aproximação for compatível com o recurso, a Carteira de acesso rápido vai estar disponível na tela de configurações rápidas.
- Se o app padrão de pagamento por aproximação for compatível com o recurso e a configuração
LOCKSCREEN_SHOW_WALLET
estiver definida comotrue
, a Carteira de acesso rápido vai estar acessível na tela de bloqueio. - Se o app de pagamento por NFC padrão for compatível com o recurso e a configuração
LOCKSCREEN_SHOW_WALLET
estiverfalse
, a Carteira de acesso rápido não vai estar disponível na tela de bloqueio.
Estado inicial
Se
QuickAccessWalletService
estiver ativado e exportado, mas não fornecer cards, o bloco na tela de bloqueio vai aparecer como mostrado no exemplo da Figura 7. Ao clicar no bloco, o app padrão de pagamento por aproximação é aberto.Figura 7. Exemplo de bloco na tela mostrando o app padrão de pagamento por aproximação.
Clicar na visualização de estado vazio, conforme mostrado na Figura 8, abre o app de pagamento por NFC padrão. Essa visualização de estado vazio é mostrada apenas quando o usuário tem um cartão restante na carteira, remove o cartão da página de detalhes e volta para a visualização da carteira.
A tela de bloqueio mostra o ícone da carteira.
Figura 8. Visualização de estado vazio na interface do Acesso rápido à Carteira.
Estado diferente de zero
Se o app de carteira fornecer um ou mais cartões, o bloco na tela de notificações vai aparecer como mostrado na Figura 9.
Figura 9. Exemplo de bloco na sombra quando o app de carteira tem um ou mais cartões.
Ao clicar no bloco, um carrossel de cards é exibido.
A tela de bloqueio mostra um botão que abre a Carteira de acesso rápido.
Figura 10. Interface de acesso rápido da Carteira com um cartão exibido.
Se o cartão mostrado representar uma forma de pagamento NFC, segurar o smartphone em um terminal de pagamento NFC vai resultar no uso dessa forma de pagamento e a visualização da carteira será dispensada.
Ao clicar em um card, você abre a atividade detalhada dele.
Se vários cartões forem fornecidos por
QuickAccessWalletService
, o usuário poderá deslizar entre eles.O menu flutuante contém uma entrada: abra as configurações da tela de bloqueio para que o usuário possa mudar a opção Mostrar carteira.
Testes de estado de bloqueio
- Se o smartphone estiver bloqueado, a carteira vai aparecer na tela de configurações rápidas com uma descrição de Adicionar um cartão se não houver nenhum cartão no app de pagamento padrão ou desbloquear para usar se houver cartões no app de pagamento padrão.
- Se o smartphone estiver bloqueado, a visibilidade da carteira na tela de bloqueio será controlada pela configuração
Secure.LOCKSCREEN_SHOW_WALLET
, que pode ser alterada em "Configurações". - Se o smartphone estiver bloqueado,
LOCKSCREEN_SHOW_WALLET
seráfalse
, e nenhum cartão estiver no app de pagamento NFC padrão, a carteira não será mostrada na tela de bloqueio. - Se o smartphone estiver bloqueado,
LOCKSCREEN_SHOW_WALLET
serátrue
, e nenhum cartão estiver no app de pagamento NFC padrão, a carteira não será mostrada na tela de bloqueio. - Se o smartphone estiver bloqueado,
LOCKSCREEN_SHOW_WALLET
serátrue
, e se houver cartões no app de pagamento por NFC padrão, a carteira vai aparecer na tela de bloqueio. - Desbloquear o smartphone enquanto a carteira está sendo mostrada na tela de bloqueio faz com que os cards sejam solicitados novamente, o que pode resultar em conteúdo diferente.
Testes de acessibilidade
- Os usuários do Talkback podem navegar pela carteira deslizando para a esquerda e para a direita e ouvindo as descrições de conteúdo dos cards.
- Deslizar para a esquerda e para a direita com o TalkBack ativado seleciona cada card por vez. Os usuários do Talkback podem selecionar e usar uma forma de pagamento por NFC em um terminal de pagamento NFC.
Testes manuais para Android 11
Para testar os recursos principais da Carteira de acesso rápido, é necessário um terminal de pagamento por aproximação (real ou falso) e um app de pagamento por aproximação que implemente QuickAccessWalletService
(app de carteira). Os principais recursos que precisam ser testados incluem disponibilidade, estado zero, seleção de cartão e comportamento da tela de bloqueio.
Disponibilidade
- Se a configuração
GLOBAL_ACTIONS_PANEL_ENABLED
fortrue
e o app de pagamento por aproximação padrão for compatível com o recurso, a Carteira de acesso rápido estará disponível. - Se a configuração
GLOBAL_ACTIONS_PANEL_ENABLED
forfalse
e o app de pagamento por NFC padrão for compatível com o recurso, a Carteira de acesso rápido não estará acessível. - Se a configuração
GLOBAL_ACTIONS_PANEL_ENABLED
fortrue
e o app de pagamento por NFC padrão não for compatível com o recurso, a Carteira de acesso rápido não estará acessível. - Se a configuração
GLOBAL_ACTIONS_PANEL_ENABLED
forfalse
e o app de pagamento por NFC padrão não for compatível com o recurso, a Carteira de acesso rápido não estará acessível.
Estado inicial
- Se
QuickAccessWalletService
estiver ativado e exportado, mas não fornecer nenhum card, a interface de acesso rápido à Carteira vai mostrar a visualização de estado vazio. Clicar na visualização de estado vazio abre o app Carteira.
Figura 11. Visualização do estado vazio na interface do Acesso rápido à Carteira.
Estado diferente de zero
Se o app de carteira fornecer um ou mais cartões, eles serão exibidos na interface de acesso rápido da Carteira.
Figura 12. Interface de acesso rápido da Carteira com um cartão mostrado. Se o cartão mostrado representar uma forma de pagamento NFC, segurar o smartphone em um terminal de pagamento NFC vai resultar no uso dessa forma de pagamento e a visualização da carteira será dispensada.
Ao clicar em um cartão exibido, a visualização da carteira é dispensada e a atividade detalhada desse cartão é aberta.
Se vários cartões forem fornecidos por
QuickAccessWalletService
, o usuário poderá deslizar entre eles.O menu flutuante contém duas entradas: uma que abre o app Carteira e outra que abre a tela Mostrar cartões e passes em "Configurações".
Testes de estado de bloqueio
- Se o smartphone estiver bloqueado, a visibilidade da carteira será controlada pela configuração
Settings.Secure.POWER_MENU_LOCK_SHOW_CONTENT
, que pode ser controlada nas Configurações. - Se o smartphone estiver bloqueado e
POWER_MENU_LOCK_SHOW_CONTENT
estiverfalse
, a carteira não vai aparecer. - Se o smartphone estiver bloqueado e o
POWER_MENU_LOCK_SHOW_CONTENT
estivertrue
, a carteira vai aparecer. - Desbloquear o smartphone enquanto a carteira está sendo mostrada na tela de bloqueio faz com que os cards sejam consultados novamente, o que pode resultar em conteúdo diferente.
Testes de acessibilidade
- Os usuários do TalkBack podem navegar pela carteira deslizando para a esquerda e para a direita e ouvindo as descrições de conteúdo dos cards.
- Deslizar para a esquerda e para a direita com o TalkBack ativado seleciona cada card por vez. Os usuários do TalkBack podem selecionar e usar uma forma de pagamento por NFC em um terminal de pagamento por NFC.