La funzionalità Portafoglio ad accesso rapido, disponibile a partire da Android 11, consente all'utente di accedere a carte di pagamento e tessere pertinenti direttamente dal menu del tasto di accensione. I principali casi d'uso includono la selezione del metodo di pagamento appropriato prima di eseguire una transazione presso un terminale NFC e l'accesso rapido a voli e altre tessere per eventi futuri.
In Android 12 o versioni successive, la funzionalità Portafoglio ad accesso rapido è disponibile dalla tendina come mostrato nelle Figure 1 e 2.
![]() |
![]() |
In Android 11, la funzionalità è disponibile dal menu del tasto di accensione come mostrato nella Figura 3.

Requisiti
Per utilizzare la funzionalità di accesso rapido a Wallet, il dispositivo deve supportare la tecnologia NFC. La funzionalità
è associata a QuickAccessWalletService
dell'app di pagamento NFC predefinita, il che significa
che il dispositivo deve supportare anche la tecnologia NFC
Host-based Card Emulation (HCE).
Panoramica delle funzionalità
L'accesso rapido a Wallet è composto da due parti: la relativa UI e il fornitore di carte di accesso rapido a Wallet.
In Android 12 o versioni successive, la UI di Wallet viene eseguita in System
UI e si trova in
frameworks/base/packages/SystemUI/src/com/android/systemui/wallet
. In
Android 11, la UI di Wallet, che si trova in
platform/packages/apps/QuickAccessWallet
,
deve essere installata e inserita nella lista consentita.
Il fornitore di carte di accesso rapido al portafoglio è l'app di pagamento NFC predefinita. Gli utenti possono
avere installate più app di pagamento NFC contemporaneamente, ma solo l'app di pagamento NFC predefinita
può mostrare le carte nel menu del tasto di accensione. Puoi specificare quale app di pagamento NFC
è impostata come predefinita inizialmente, ma gli utenti possono selezionare un'altra
app nelle Impostazioni. Se è installata una sola app di pagamento NFC, questa diventa
automaticamente predefinita (vedi
CardEmulationManager
).
Implementazione
Per fornire carte all'interfaccia utente di Quick Access Wallet, le app di pagamento NFC devono implementare QuickAccessWalletService
.
Le app di pagamento devono includere una voce manifest che pubblicizza il servizio.
Per garantire che solo la UI di sistema possa essere associata a QuickAccessWalletService
, l'app di pagamento NFC deve richiedere l'autorizzazione android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE
. La richiesta di questa autorizzazione
garantisce che
solo la UI di sistema possa essere associata 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>
Informazioni aggiuntive sul portafoglio sono incluse nel file XML collegato:
<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"/>
Successivamente, l'app di pagamento deve implementare 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
inizia a gestire una transazione NFC e, di conseguenza, avvia un'attività per visualizzare l'avanzamento e l'esito del pagamento, deve anche tentare di ottenere un riferimento a QuickAccessWalletService
associato e chiamare QuickAccessWalletService#sendEvent
con un tipo di evento TYPE_NFC_PAYMENT_STARTED
. In questo modo, l'interfaccia utente di Quick Access Wallet viene
chiusa, consentendo all'utente di visualizzare senza ostacoli l'attività di pagamento.
Per ulteriore documentazione sull'implementazione di QuickAccessWalletService
, consulta
QuickAccessWalletService
e il test
TestQuickAccessWalletService
CTS.
Attivare l'interfaccia utente di Accesso rapido a Wallet in Android 11
Per configurare il portafoglio ad accesso rapido in modo che sia disponibile dal menu di alimentazione
in Android 11, includi la destinazione
QuickAccessWallet
nella build e abilita il plug-in globalactions.wallet
aggiungendo
la riga in grassetto nell'esempio di codice riportato di seguito al file
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>
Specifica l'app di pagamento NFC predefinita nel
file di configurazione delle impostazioni
utilizzando def_nfc_payment_component
.
L'app di pagamento NFC predefinita deve esporre
QuickAccessWalletService
per fornire le carte a Quick Access Wallet. Se l'app di pagamento NFC predefinita
non esporta questo servizio, l'interfaccia utente del wallet è nascosta.
Dettagli di implementazione di QuickAccessWalletService
QuickAccessWalletService
ha tre metodi astratti che devono essere implementati: onWalletCardsRequested
, onWalletCardSelected
e onWalletDismissed
. Il
diagramma di sequenza riportato di seguito illustra una sequenza di chiamate quando viene visualizzato il portafoglio di accesso rapido
immediatamente prima di un pagamento NFC.

Non tutte le visualizzazioni del portafoglio ad accesso rapido sono seguite da un pagamento NFC, ma
la Figura 4 sopra illustra tutte le funzionalità di
QuickAccessWalletService
. In questo esempio, il fornitore della scheda del portafoglio ad accesso rapido
implementa gli elementi evidenziati in blu. Si presume che le carte di pagamento
siano memorizzate sul dispositivo in un database e che vi si acceda tramite un'interfaccia
denominata PaymentCardManager
. Si presume inoltre che un'attività
chiamata PaymentActivity
mostri il risultato di un pagamento NFC. Il flusso
procede come segue:
- L'utente esegue un gesto per visualizzare il portafoglio ad accesso rapido.
L'interfaccia utente del portafoglio ad accesso rapido (parte dell'interfaccia utente di sistema) controlla il gestore dei pacchetti per verificare se l'app di pagamento NFC predefinita esporta
QuickAccessWalletService
.- Se il servizio non viene esportato, il portafoglio di accesso rapido non viene visualizzato.
La UI di Quick Access Wallet si associa a
QuickAccessWalletService
e chiamaonWalletCardsRequested
. Questo metodo accetta un oggetto richiesta contenente dati sul numero e sulle dimensioni delle schede che possono essere fornite e un callback. Il callback può essere chiamato da un thread in background.QuickAccessWalletService
calcola le schede da mostrare, quindi chiama il metodoonSuccess
sul callback fornito. È consigliabile che il servizio esegua queste azioni su un thread in background.Non appena vengono visualizzate le schede, la UI di sistema notifica
QuickAccessWalletService
che la prima scheda è stata selezionata chiamandoonWalletCardSelected
.onWalletCardSelected
viene chiamato ogni volta che l'utente seleziona una nuova carta.onWalletCardSelected
potrebbe essere chiamato anche se la carta attualmente selezionata non è stata modificata.
Quando l'utente chiude l'accesso rapido a Wallet, la UI di sistema notifica
QuickAccessWalletService
chiamandoonWalletDismissed
.
Nell'esempio precedente, l'utente avvicina lo smartphone a un terminale di pagamento NFC mentre viene visualizzato il wallet. Un componente chiave della gestione dei pagamenti NFC è HostApduService
, che deve essere implementato per elaborare le APDU fornite dal lettore NFC (per ulteriori informazioni, vedi Emulazione della carta basata sull'host).
Si presume che l'app di pagamento avvii un'attività per visualizzare l'avanzamento e
il risultato dell'interazione con il terminale NFC. Tuttavia, l'interfaccia utente di Quick Access
Wallet viene visualizzata sopra la finestra dell'app, il che significa che
l'attività di pagamento è oscurata dall'interfaccia utente di Quick Access Wallet. Per risolvere il problema, l'app deve notificare alla UI di sistema che la UI di accesso rapido al portafoglio deve essere chiusa. Può farlo ottenendo un riferimento al QuickAccessWalletService
associato e chiamando sendWalletServiceEvent
con il tipo di evento TYPE_NFC_PAYMENT_STARTED
.
Implementazione di esempio di 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();
});
}
}
Per ulteriori dettagli su QuickAccessWalletService
, consulta il
riferimento API QuickAccessWalletService
.
Autorizzazioni
La voce del manifest per QuickAccessWalletService
deve richiedere l'autorizzazione
android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE
introdotta in
Android 11. Si tratta di un'autorizzazione a livello di firma detenuta
dalla UI di sistema, il che significa che
solo il processo della UI di sistema può essere associato alle implementazioni di
QuickAccessWalletService
. Tieni presente che le app di cui è stato eseguito il sideload possono richiedere questa
autorizzazione e ottenere l'accesso completo ai dati di QuickAccessWalletService
sui dispositivi
con Android 10 o versioni precedenti. Per evitare questo problema, è consigliabile che il servizio
controlli la versione della build in onCreate
e attivi il servizio solo sui dispositivi
con Android 11 e versioni successive. Non sono necessarie altre autorizzazioni dell'app
oltre a quelle necessarie per fornire servizi di pagamento
con emulazione della carta host.
Se l'app di pagamento NFC predefinita non implementa o non esporta
QuickAccessWalletService
, l'interfaccia utente di Quick Access Wallet non viene visualizzata.
Impostazioni in Android 12
Per attivare o disattivare l'accesso rapido al portafoglio dalla schermata di blocco, gli utenti possono utilizzare l'opzione di attivazione/disattivazione Mostra portafoglio in Impostazioni > Display > Schermata di blocco. Per disattivare il portafoglio nella tendina, gli utenti devono modificarlo manualmente nella tendina delle impostazioni rapide.
Figura 5. Mostra il pulsante di attivazione/disattivazione del portafoglio nella pagina Schermata di blocco delle Impostazioni.
Impostazioni in Android 11
Gli utenti possono disattivare la funzionalità Portafoglio ad accesso rapido dall'app Impostazioni. La pagina delle impostazioni si trova in Impostazioni > Sistema > Gesti > Carte e tessere.

Personalizzazione
Aggiungere la visualizzazione Accesso rapido a Wallet a un'altra posizione nell'interfaccia utente di sistema
L'interfaccia utente di Accesso rapido a Wallet è creata come plug-in di sistema.
Sebbene l'implementazione AOSP lo utilizzi in
GlobalActionsDialog
(mostrato con la pressione prolungata del tasto di accensione), puoi spostare la funzionalità dietro un'altra gesture
purché mantieni il contratto specificato dall'interfaccia del 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);
}
}
L'interfaccia utente di accesso rapido a Wallet implementa GlobalActionsPanelPlugin
e PanelViewController
.
GlobalActionsDialog
ottiene un'istanza del plug-in del portafoglio utilizzando
com.android.systemui.Dependency
:
GlobalActionsPanelPlugin mPanelPlugin =
Dependency.get(ExtensionController.class)
.newExtension(GlobalActionsPanelPlugin.class)
.withPlugin(GlobalActionsPanelPlugin.class)
.build()
.get();
Dopo aver verificato che il plug-in non sia nullo e che PanelViewController
restituito da onPanelShown
non sia nullo, la finestra di dialogo associa View
fornito da getPanelContent
al proprio View
e fornisce i callback appropriati per gli eventi di 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();
Per rimuovere l'accesso rapido a Wallet dal menu del tasto di accensione, ometti il
target QuickAccessWallet
dalla build di sistema. Per rimuovere il portafoglio
Quick Access dal menu del tasto di accensione, ma aggiungerlo a una visualizzazione diversa fornita dall'interfaccia utente di sistema,
includi la destinazione di build e rimuovi i riferimenti a GlobalActionsPanelPlugin
da
GlobalActionsImpl
.
Impostare le configurazioni predefinite
Android 12
In Android 12 o versioni successive, l'accesso rapido a Wallet è
sempre visibile nel riquadro delle Impostazioni rapide. La visibilità del portafoglio
ad accesso rapido nella schermata di blocco è regolata dalla seguente impostazione di sicurezza:
LOCKSCREEN_SHOW_WALLET
. Questa impostazione controlla se l'icona del portafoglio ad accesso rapido
viene visualizzata in basso a destra della schermata di blocco. Questa impostazione è impostata su
true
per impostazione predefinita, ma può essere disattivata dall'utente in Impostazioni >
Display > Schermata di blocco > Mostra wallet.
Android 11
In Android 11, la visibilità di Accesso rapido a Wallet è controllata da due impostazioni sicure:
GLOBAL_ACTIONS_PANEL_ENABLED
e GLOBAL_ACTIONS_PANEL_AVAILABLE
. L'impostazione
AVAILABLE
controlla se la funzionalità può essere attivata e disattivata in
Impostazioni. Questa impostazione è impostata su true
da
WalletPluginService
.
Se QuickAccessWallet
non è incluso nella build, l'impostazione rimane
false
. L'impostazione ENABLED
è impostata su true
per impostazione predefinita nella stessa posizione,
ma può essere disattivata dall'utente nelle Impostazioni. Per modificare il comportamento predefinito,
modifica WalletPluginService#enableFeatureInSettings
.
Convalida
Per convalidare l'implementazione di Quick Access Wallet, esegui CTS e test manuali. Le modifiche al plug-in devono anche esercitare i test robolectric inclusi.
Test CTS
Esegui i test CTS che si trovano in
cts/tests/quickaccesswallet
.
Test manuali per Android 12
Il test delle funzionalità principali del portafoglio ad accesso rapido richiede un terminale di pagamento NFC (reale o fittizio) e un'app di pagamento NFC che implementi QuickAccessWalletService
(app del portafoglio). Le funzionalità principali da testare
includono: disponibilità, stato zero, selezione delle schede e comportamento della schermata di blocco.
Disponibilità
- Se l'app di pagamento NFC predefinita non supporta la funzionalità, il portafoglio ad accesso rapido non è accessibile né nelle Impostazioni rapide né nella schermata di blocco.
- Se l'app di pagamento NFC predefinita supporta la funzionalità, il portafoglio ad accesso rapido è accessibile nella barra delle impostazioni rapide.
- Se l'app di pagamento NFC predefinita supporta la funzionalità e se l'impostazione
LOCKSCREEN_SHOW_WALLET
ètrue
, il portafoglio ad accesso rapido è accessibile nella schermata di blocco. - Se l'app di pagamento NFC predefinita supporta la funzionalità e l'impostazione
LOCKSCREEN_SHOW_WALLET
èfalse
, il portafoglio ad accesso rapido non è accessibile nella schermata di blocco.
Stato zero
Se
QuickAccessWalletService
è abilitato ed esportato, ma non fornisce schede, il riquadro nella tendina viene visualizzato come mostrato nell'esempio della Figura 7. Se fai clic sul riquadro, si apre l'app di pagamento NFC predefinita.Figura 7. Esempio di riquadro nell'area a discesa che mostra l'app di pagamento NFC predefinita.
Se fai clic sulla visualizzazione dello stato vuoto come mostrato nella Figura 8, si apre l'app di pagamento NFC predefinita. Questa visualizzazione dello stato vuoto viene visualizzata solo quando l'utente ha una sola carta nel wallet, la rimuove dalla pagina dei dettagli della carta e poi torna alla visualizzazione del wallet.
La schermata di blocco mostra l'icona del portafoglio.
Figura 8. Visualizzazione dello stato vuoto nell'interfaccia utente di Accesso rapido a Wallet.
Stato diverso da zero
Se l'app del portafoglio fornisce una o più carte, il riquadro nell'ombra viene visualizzato come mostrato nella Figura 9.
Figura 9. Esempio di riquadro nella tendina quando l'app Wallet ha una o più carte.
Se fai clic sul riquadro, viene visualizzato un carosello di schede.
La schermata di blocco mostra un pulsante che apre l'accesso rapido a Wallet.
Figura 10. UI di Accesso rapido a Wallet con una carta visualizzata.
Se la carta visualizzata rappresenta un metodo di pagamento NFC, tenendo lo smartphone vicino a un terminale di pagamento NFC, il metodo di pagamento viene utilizzato e la visualizzazione del wallet viene chiusa.
Se fai clic su una scheda visualizzata, si apre l'attività dettagliata relativa alla scheda.
Se
QuickAccessWalletService
fornisce più carte, l'utente può scorrere tra le carte.Il menu extra contiene una voce: apri le impostazioni della schermata di blocco in modo che l'utente possa modificare l'opzione Mostra wallet.
Test dello stato della serratura
- Se lo smartphone è bloccato, il wallet è visibile nella sezione delle Impostazioni rapide con la descrizione Aggiungi una carta se non esiste alcuna carta nell'app di pagamento predefinita oppure Sblocca per utilizzare se esistono carte nell'app di pagamento predefinita.
- Se lo smartphone è bloccato, la visibilità del portafoglio nella schermata di blocco è
controllata dall'impostazione
Secure.LOCKSCREEN_SHOW_WALLET
, che è controllata nelle Impostazioni. - Se lo smartphone è bloccato,
LOCKSCREEN_SHOW_WALLET
èfalse
e non esiste alcuna carta nell'app di pagamento NFC predefinita, il portafoglio non viene visualizzato nella schermata di blocco. - Se lo smartphone è bloccato,
LOCKSCREEN_SHOW_WALLET
ètrue
e non esiste alcuna carta nell'app di pagamento NFC predefinita, il portafoglio non viene visualizzato nella schermata di blocco. - Se lo smartphone è bloccato,
LOCKSCREEN_SHOW_WALLET
ètrue
e le carte sono presenti nell'app di pagamento NFC predefinita, il portafoglio viene visualizzato sulla schermata di blocco. - Lo sblocco dello smartphone mentre il portafoglio viene visualizzato sulla schermata di blocco comporta una nuova richiesta delle carte, il che potrebbe comportare contenuti diversi.
Test di accessibilità
- Gli utenti di TalkBack possono navigare nella visualizzazione del portafoglio scorrendo verso sinistra e destra e ascoltando le descrizioni dei contenuti delle carte.
- Se TalkBack è attivato, lo scorrimento verso sinistra e verso destra seleziona ogni scheda a turno. Gli utenti di TalkBack possono selezionare e utilizzare un metodo di pagamento NFC presso un terminale di pagamento NFC.
Test manuali per Android 11
Il test delle funzionalità principali del portafoglio ad accesso rapido richiede un terminale di pagamento NFC (reale o fittizio) e un'app di pagamento NFC che implementi QuickAccessWalletService
(app del portafoglio). Le funzionalità principali da testare
includono disponibilità, stato zero, selezione delle carte e comportamento della schermata di blocco.
Disponibilità
- Se l'impostazione
GLOBAL_ACTIONS_PANEL_ENABLED
ètrue
e l'app di pagamento NFC predefinita supporta la funzionalità, il portafoglio ad accesso rapido è accessibile. - Se l'impostazione
GLOBAL_ACTIONS_PANEL_ENABLED
èfalse
e l'app di pagamento NFC predefinita supporta la funzionalità, il portafoglio ad accesso rapido non è accessibile. - Se l'impostazione
GLOBAL_ACTIONS_PANEL_ENABLED
ètrue
e l'app di pagamento NFC predefinita non supporta la funzionalità, il portafoglio per l'accesso rapido non è accessibile. - Se l'impostazione
GLOBAL_ACTIONS_PANEL_ENABLED
èfalse
e l'app di pagamento NFC predefinita non supporta la funzionalità, il portafoglio per l'accesso rapido non è accessibile.
Stato zero
- Se
QuickAccessWalletService
è attivato ed esportato, ma non fornisce alcuna carta, la UI di Accesso rapido a Wallet mostra la visualizzazione dello stato vuoto. Se fai clic sulla visualizzazione dello stato vuoto, si apre l'app Wallet.
Figura 11. Visualizzazione dello stato vuoto nell'interfaccia utente di Accesso rapido a Wallet.
Stato diverso da zero
Se l'app Wallet fornisce una o più carte, queste vengono visualizzate nell'interfaccia utente di Quick Access Wallet.
Figura 12. UI di Accesso rapido a Wallet con una carta visualizzata. Se la carta visualizzata rappresenta un metodo di pagamento NFC, tenendo lo smartphone vicino a un terminale di pagamento NFC, il metodo di pagamento viene utilizzato e la visualizzazione del wallet viene chiusa.
Se fai clic su una carta visualizzata, la visualizzazione del portafoglio viene chiusa e si apre l'attività dettagliata della carta.
Se
QuickAccessWalletService
fornisce più carte, l'utente può scorrere tra le carte.Il menu overflow contiene due voci: una che apre l'app Wallet e una che apre la schermata Mostra carte e pass in Impostazioni.
Test dello stato della serratura
- Se lo smartphone è bloccato, la visibilità del portafoglio è controllata dall'impostazione
Settings.Secure.POWER_MENU_LOCK_SHOW_CONTENT
, che può essere controllata nelle Impostazioni. - Se lo smartphone è bloccato e
POWER_MENU_LOCK_SHOW_CONTENT
èfalse
, il portafoglio non viene visualizzato. - Se lo smartphone è bloccato e
POWER_MENU_LOCK_SHOW_CONTENT
ètrue
, viene visualizzato il portafoglio. - Lo sblocco dello smartphone mentre il portafoglio viene visualizzato nella schermata di blocco comporta una nuova query delle carte, il che potrebbe comportare contenuti diversi.
Test di accessibilità
- Gli utenti di TalkBack possono navigare nella visualizzazione del portafoglio scorrendo verso sinistra e destra e ascoltando le descrizioni dei contenuti delle carte.
- Se TalkBack è attivo, lo scorrimento verso sinistra e verso destra seleziona ogni scheda a turno. Gli utenti di TalkBack possono selezionare e utilizzare un metodo di pagamento NFC presso un terminale di pagamento NFC.