Schnellzugriff auf Karten

Die Wallet-Funktion „Schnellzugriff“, verfügbar unter Mit Android 11 können Nutzer Greife direkt über das Ein/Aus-Menü auf Zahlungskarten und relevante Karten/Tickets zu. Hauptnutzung ist die Auswahl der richtigen Zahlungsmethode, bevor eine Transaktion an einem NFC-Terminal und schnellen Zugriff auf Flüge und andere Karten/Tickets für anstehende Veranstaltungen.

Ab Android 12: Schnellzugriff Merkmal ist in der Schattierung verfügbar, wie in Abbildung 1 und 2 dargestellt.

<ph type="x-smartling-placeholder">
</ph> Schnellzugriff auf Wallet-Funktion in der Farbe
Abbildung 1: Schnellzugriff auf Wallet-Funktion (Gerät gesperrt).
<ph type="x-smartling-placeholder">
</ph> Schnellzugriff auf Wallet-Funktion in der Farbe
Abbildung 2: Wallet-Funktion „Schnellzugriff“ (Gerät entsperrt).

In Android 11 ist die Funktion über das Ein/Aus-Menü verfügbar, wie in Abbildung 3:

<ph type="x-smartling-placeholder">
</ph> Schnellzugriff auf Wallet im Ein/Aus-Menü
Abbildung 3: Schnellzugriff auf Wallet-Funktion im Einsatz

Voraussetzungen

Ihr Gerät muss NFC unterstützen, damit Sie die Wallet-Funktion für den Schnellzugriff nutzen können. Die Funktion wird an QuickAccessWalletService der Standard-NFC-Zahlungs-App gebunden, was bedeutet dass das Gerät auch NFC unterstützen muss, Host-based Card Emulation (HCE).

Funktionsübersicht

Das Wallet-Schnellzugriff-Konto besteht aus zwei Teilen: der Wallet-Benutzeroberfläche für den Schnellzugriff und den Kartenanbieter für den Schnellzugriff auf Wallets.

Ab Android 12 läuft die Wallet-UI im System UI und befindet sich frameworks/base/packages/SystemUI/src/com/android/systemui/wallet In Die Wallet-Benutzeroberfläche in Android 11 platform/packages/apps/QuickAccessWallet, installiert und auf die Zulassungsliste gesetzt werden.

Der Kartenanbieter für den Schnellzugriff für Wallet ist die standardmäßige NFC-Zahlungs-App. Nutzer können mehrere NFC-Zahlungs-Apps gleichzeitig installiert haben, aber nur die Standard-App Die NFC-Zahlungs-App kann Karten im Ein/Aus-Menü anzeigen. Sie können festlegen, welche Die Zahlungs-App ist anfänglich als Standard-App festgelegt, aber Nutzer können eine andere App auswählen App in den Einstellungen. Wenn nur eine NFC-Zahlungs-App installiert ist, wird sie zur automatisch (siehe CardEmulationManager)

Implementierung

Um Karten für die Wallet-Benutzeroberfläche für den Schnellzugriff bereitzustellen, NFC-Zahlungen müssen Apps QuickAccessWalletService Zahlungs-Apps müssen einen Manifesteintrag enthalten, der den Dienst bewirbt.

Damit nur die System-UI an QuickAccessWalletService gebunden werden kann, muss der Die NFC-Zahlungs-App muss die Berechtigung „android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE“. Voraussetzung Berechtigung stellt sicher, dass kann nur die System-UI an QuickAccessWalletService gebunden werden.

<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>

Weitere Informationen zu Wallet findest du in der verlinkten XML-Datei:

<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"/>

Als Nächstes muss die Zahlungs-App QuickAccessWalletService implementieren:

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
    }
}

Wenn HostApduService mit der Verarbeitung einer NFC-Transaktion beginnt und folglich eine Aktivität startet, um den Fortschritt und das Ergebnis der Zahlung anzuzeigen, sollte sie versuchen Sie auch, einen Verweis auf die gebundene QuickAccessWalletService zu erhalten, und rufen Sie QuickAccessWalletService#sendEvent mit dem Ereignistyp TYPE_NFC_PAYMENT_STARTED. Dadurch wird die Wallet-Benutzeroberfläche für den Schnellzugriff geschlossen werden, sodass der Nutzer die Zahlungsaktivitäten ungehindert sehen kann.

Weitere Informationen zum Implementieren von QuickAccessWalletService finden Sie unter QuickAccessWalletService und die TestQuickAccessWalletService CTS-Test

Schnellzugriff auf Wallet-UI in Android 11 aktivieren

So konfigurierst du den Schnellzugriff über das Ein/Aus-Menü in Android 11: QuickAccessWallet im Build und aktivieren Sie das Plug-in globalactions.wallet, indem Sie die fett gedruckte Zeile im Codebeispiel unten overlay/frameworks/base/packages/SystemUI/res/values/config.xml-Datei.

<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>

Geben Sie die Standard-App für NFC-Zahlungen in der Konfigurationsdatei für Einstellungen mit def_nfc_payment_component.

Die Standard-NFC-Zahlungs-App muss QuickAccessWalletService um Karten für das Schnellzugriff-Wallet bereitzustellen. Wenn die Standard-App für NFC-Zahlungen diesen Dienst nicht exportiert, ist die Wallet-UI verborgen.

Details zur Implementierung von QuickAccessWalletService

QuickAccessWalletService hat drei abstrakte Methoden, die implementiert werden müssen: onWalletCardsRequested, onWalletCardSelected und onWalletDismissed. Die Das folgende Sequenzdiagramm veranschaulicht eine Aufrufsequenz, wenn das Wallet für den Schnellzugriff unmittelbar vor einer NFC-Zahlung angezeigt wird.

Wallet-Sequenzdiagramm für den Schnellzugriff

<ph type="x-smartling-placeholder">
</ph> Beispiel für eine Aufrufsequenz beim Aufrufen des Schnellzugriffs-Wallets <ph type="x-smartling-placeholder">
</ph> Abbildung 4: Beispiel für eine Aufrufsequenz, wenn der Schnellzugriff auf Wallet angesehen.

Nicht auf alle Ansichten des Schnellzugriff-Wallets folgt eine NFC-Zahlung, aber In Abbildung 4 oben sind alle Funktionen des QuickAccessWalletService In diesem Beispiel ist die Wallet-Karte für den Schnellzugriff implementiert die blau umrandeten Elemente. Es wird davon ausgegangen, dass die Zahlung Karten werden auf dem Gerät in einer Datenbank gespeichert und der Zugriff erfolgt über eine Schnittstelle mit dem Namen PaymentCardManager. Außerdem wird angenommen, dass eine Aktivität PaymentActivity wird das Ergebnis einer NFC-Zahlung angezeigt. Ablauf wie folgt abläuft:

  1. Der Nutzer führt eine Geste aus, um das Schnellzugriff-Wallet aufzurufen.
  2. Die Wallet-Benutzeroberfläche für den Schnellzugriff (Teil der System-UI) prüft das Paket um zu sehen, ob die Standard-App für NFC-Zahlungen QuickAccessWalletService

    • Wenn der Dienst nicht exportiert wird, wird das Schnellzugriff-Wallet nicht angezeigt.
  3. Die Wallet-Benutzeroberfläche für den Schnellzugriff wird an QuickAccessWalletService gebunden und ruft onWalletCardsRequested auf. Diese Methode verwendet ein Anfrageobjekt mit Daten zur Anzahl und Größe der Karten, die bereitgestellt werden können und einen Rückruf. Der Callback kann aus einem Hintergrundthread aufgerufen werden.

  4. QuickAccessWalletService berechnet die Karten, die angezeigt werden sollen. und ruft dann die Methode onSuccess für das bereitgestellte Callback auf. Es ist wird empfohlen, diese Aktionen in einem Hintergrundthread auszuführen.

  5. Sobald die Karten angezeigt werden, QuickAccessWalletService, dass die erste Karte durch den Aufruf von onWalletCardSelected.

    • onWalletCardSelected wird jedes Mal aufgerufen, wenn der Nutzer eine Auswahl eine neue Karte.
    • onWalletCardSelected kann auch dann aufgerufen werden, wenn die aktuelle ausgewählte Karte hat sich nicht geändert.
  6. Wenn der Nutzer den Schnellzugriff schließt, wird über die System-UI eine Benachrichtigung QuickAccessWalletService durch Aufrufen von onWalletDismissed.

Im obigen Beispiel bringt der Nutzer das Smartphone in die Reichweite einer NFC-Zahlung während die Brieftasche angezeigt wird. Eine wichtige Komponente zur Handhabung von NFC Zahlungen betragen HostApduService und müssen implementiert werden, um APDUs zu verarbeiten. des NFC-Lesegeräts bereitgestellt werden (weitere Informationen finden Sie unter Host-basierte Kartenemulation). Es wird angenommen, dass die Zahlungs-App eine Aktivität startet, um den Fortschritt Ergebnis der Interaktion mit dem NFC-Terminal. Der Schnellzugriff Die Wallet-Benutzeroberfläche wird über dem App-Fenster angezeigt. Zahlungsaktivitäten werden durch die Wallet-Benutzeroberfläche für den Schnellzugriff verdeckt. Um dies zu beheben, App muss die System-UI benachrichtigen, dass die Wallet-Benutzeroberfläche für den Schnellzugriff geschlossen. Dazu ruft sie einen Verweis auf die QuickAccessWalletService und ruft sendWalletServiceEvent mit dem Ereignis auf Geben Sie TYPE_NFC_PAYMENT_STARTED ein.

QuickAccessWalletService – Beispielimplementierung

/** 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();
    });
  }
}

Weitere Informationen zu QuickAccessWalletService finden Sie unter QuickAccessWalletService API-Referenz.

Berechtigungen

Für den Manifesteintrag für QuickAccessWalletService muss Folgendes erforderlich sein: Berechtigung android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE eingeführt in Android 11 Dies ist eine Berechtigung auf Signaturebene über die System-UI. Das bedeutet, kann nur der System-UI-Prozess an Implementierungen von QuickAccessWalletService Beachten Sie, dass per Sideload übertragene Apps Anspruch darauf erheben können Berechtigung und vollständigen Zugriff auf QuickAccessWalletService-Daten auf Geräten erhalten mit Android 10 oder niedriger. Um dies zu verhindern, sollte der Dienst die Build-Version in onCreate prüfen und den Dienst nur auf Geräten aktivieren mit Android 11 oder höher. Keine weiteren App-Berechtigungen erforderlich sind, zusätzlich zu den Anforderungen, die für die Zahlung der Hostkartenemulation erforderlich sind Dienstleistungen.

Wenn die Standard-App für NFC-Zahlungen keine QuickAccessWalletService, die Wallet-Benutzeroberfläche für den Schnellzugriff wird nicht angezeigt.

Einstellungen in Android 12

Nutzer können das Schnellzugriff-Wallet auf dem Sperrbildschirm aktivieren oder deaktivieren. verwende die Ein/Aus-Schaltfläche Wallet anzeigen unter Einstellungen > Displaynetzwerk > Sperrbildschirm: Um das Wallet in der Leiste zu deaktivieren, müssen Nutzer manuell bearbeiten es in der Schnelleinstellungen-Leiste angezeigt.

Ein/Aus-Schaltfläche, um Wallet auf dem Sperrbildschirm zu aktivieren oder zu deaktivieren

Abbildung 5: Ein/Aus-Schaltfläche für Wallet auf der Sperrbildschirmseite in den Einstellungen anzeigen.

Einstellungen in Android 11

Nutzer können die Wallet-Funktion „Schnellzugriff“ in den Einstellungen deaktivieren. Die finden Sie unter Einstellungen > System > Gesten und Bewegungen > Karten und Karten/Tickets.

<ph type="x-smartling-placeholder">
</ph> Einstellungsseite zum Aktivieren oder Deaktivieren der Wallet-Funktion „Schnellzugriff“
Abbildung 6: Seite mit den Einstellungen zum Aktivieren oder Deaktivieren Schnellzugriff auf Wallet.

Personalisierung

Schnellzugriff für Wallet-Ansicht einem anderen Speicherort in der System-UI hinzufügen

Die Schnellzugriff auf Wallet-UI ist als System-Plug-in. Die AOSP-Implementierung macht es GlobalActionsDialog (wird durch langes Drücken der Ein/Aus-Taste angezeigt) können Sie die Funktion hinter einer anderen Touch-Geste verschieben. solange Sie den in der Plug-in-Oberfläche festgelegten Vertrag einhalten.

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);
  }
}

Die Schnellzugriff auf Wallet-UI Implementiert GlobalActionsPanelPlugin und PanelViewController. GlobalActionsDialog ruft eine Instanz des Wallet-Plug-ins mithilfe von com.android.systemui.Dependency:

GlobalActionsPanelPlugin mPanelPlugin =
    Dependency.get(ExtensionController.class)
        .newExtension(GlobalActionsPanelPlugin.class)
        .withPlugin(GlobalActionsPanelPlugin.class)
        .build()
        .get();

Nachdem Sie geprüft haben, ob das Plug-in nicht null ist und das PanelViewController von onPanelShown zurückgegeben wird, nicht null ist, hängt das Dialogfeld die angegebene View an. von getPanelContent an sein eigenes View und stellt entsprechende Callbacks für Systemereignisse.

// 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();

Wenn du die Brieftasche für den Schnellzugriff aus dem Ein/Aus-Menü entfernen möchtest, lasse das Feld QuickAccessWallet-Ziel aus dem System-Build. So entfernen Sie den Schnellzugriff: Wallet über das Ein/Aus-Menü öffnen, aber zu einer anderen System-UI hinzufügen. das Build-Ziel einschließen und Verweise auf GlobalActionsPanelPlugin entfernen von GlobalActionsImpl

Standardkonfigurationen festlegen

Android 12

Unter Android 12 oder höher ist die immer in der Leiste der Schnelleinstellungen sichtbar. Sichtbarkeit des Schnellzugriffs Wallet ist auf dem Sperrbildschirm durch die folgende Sicherheitseinstellung geschützt: LOCKSCREEN_SHOW_WALLET Mit dieser Einstellung wird festgelegt, ob der Schnellzugriff wird unten rechts auf dem Sperrbildschirm angezeigt. Diese Einstellung ist festgelegt auf true ist die Standardeinstellung, kann aber vom Nutzer in den Einstellungen > deaktiviert werden. Display > Sperrbildschirm > Wallet anzeigen.

Android 11

In Android 11 wird die Sichtbarkeit von Wallet über den Schnellzugriff durch zwei sichere Einstellungen gesteuert: GLOBAL_ACTIONS_PANEL_ENABLED und GLOBAL_ACTIONS_PANEL_AVAILABLE. Die Mit der Einstellung „AVAILABLE“ wird festgelegt, ob die Funktion hier aktiviert und deaktiviert werden kann: Einstellungen. Diese Einstellung wird auf true festgelegt von WalletPluginService Wenn QuickAccessWallet nicht im Build enthalten ist, bleibt die Einstellung erhalten false. Die Einstellung ENABLED ist an derselben Stelle standardmäßig auf true festgelegt. kann vom Nutzer in den Einstellungen deaktiviert werden. So ändern Sie das Standardverhalten: WalletPluginService#enableFeatureInSettings ändern.

Zertifizierungsstufe

Führe CTS und manuelle Zahlungen aus, um die Implementierung des Schnellzugriff-Wallet zu validieren. Tests durchführen. Änderungen am Plug-in sollten auch die in Robolectric-Tests.

CTS-Tests

Führen Sie die CTS-Tests unter cts/tests/quickaccesswallet

Manuelle Tests für Android 12

Für das Testen der Hauptfunktionen des Schnellzugriff-Wallet ist eine NFC-Zahlung erforderlich (echt oder gefälscht) und eine NFC-Zahlungs-App, die QuickAccessWalletService (Wallet-App). Wichtige Funktionen, die getestet werden müssen umfassen: Verfügbarkeit, Nullstatus, Kartenauswahl und Verhalten auf dem Sperrbildschirm.

Verfügbarkeit

  • Wenn die Standard-App für NFC-Zahlungen diese Funktion nicht unterstützt, erscheint die Schnellansicht Der Zugriff auf Wallet ist weder über die Schnelleinstellungen noch über das Schloss möglich Bildschirm.
  • Wenn die Standard-NFC-Zahlungs-App diese Funktion unterstützt, zeigt der Schnellzugriff Wallet ist in der Schnelleinstellungen-Leiste verfügbar.
  • Wenn die Standard-NFC-Zahlungs-App die Funktion unterstützt und der Die Einstellung von LOCKSCREEN_SHOW_WALLET ist true, die Brieftasche für den Schnellzugriff ist auf dem Sperrbildschirm angezeigt.
  • Wenn die Standard-NFC-Zahlungs-App die Funktion unterstützt und der Die Einstellung von LOCKSCREEN_SHOW_WALLET ist false, die Brieftasche für den Schnellzugriff nicht auf dem Sperrbildschirm angezeigt.

Nullstatus

  • Wenn QuickAccessWalletService aktiviert und exportiert wird, aber nicht Karten vorhanden sind, wird die Kachel im Schatten angezeigt, wie in der Beispiel in Abbildung 7. Durch Klicken auf die Kachel wird die Standard-App für NFC-Zahlungen geöffnet.

    Beispielkachel in der Leiste, die die Standard-NFC-Zahlungs-App zeigt

    Abbildung 7: Beispielkachel in der Leiste, die die Standard-NFC-Zahlungs-App zeigt.

  • Durch Klicken auf die leere Zustandsansicht (siehe Abbildung 8) wird das Standard-App für NFC-Zahlungen. Diese leere Zustandsansicht wird nur angezeigt, wenn der Der Nutzer hat noch eine Karte im Wallet und entfernt die Karte aus den Kartendetails. und kehrt dann zur Wallet-Ansicht zurück.

  • Auf dem Sperrbildschirm wird das Brieftaschensymbol angezeigt.

Leere Ansicht im Schnellzugriff-Wallet

Abbildung 8: Leere Ansicht in der Wallet-Benutzeroberfläche für den Schnellzugriff.

Status ungleich null

  • Wenn die Brieftaschen-App eine oder mehrere Karten bietet, wird die Kachel in der Schattierung wie in Abbildung 9 dargestellt.

    Beispielkachel in der Leiste, wenn die Wallet-App eine oder mehrere Karten enthält

    Abbildung 9: Beispielkachel in der Leiste, wenn die Wallet-App eine oder mehrere Karten enthält.

  • Durch Klicken auf die Kachel wird ein Kartenkarussell angezeigt.

  • Auf dem Sperrbildschirm ist eine Schaltfläche zu sehen, über die der Schnellzugriff geöffnet wird.

    Schnellzugriff auf Wallet-Benutzeroberfläche mit einer Karte

    Abbildung 10. Schnellzugriff auf Wallet-Benutzeroberfläche mit einer Karte

  • Wenn die angezeigte Karte eine NFC-Zahlungsmethode darstellt, an ein NFC-Zahlungsterminal führt, wird diese Zahlungsmethode verwendet und die Wallet-Ansicht wird geschlossen.

  • Wenn Sie auf eine angezeigte Karte klicken, wird die detaillierte Aktivität für diese Karte geöffnet.

  • Wenn von QuickAccessWalletService mehrere Karten bereitgestellt werden, zwischen Karten wischen.

  • Das Dreipunkt-Menü enthält einen Eintrag: Öffnen Sie die Einstellungen für den Sperrbildschirm, , damit der Nutzer die Option Wallet anzeigen ändern kann.

Sperrstatustests

  • Wenn das Smartphone gesperrt ist, wird die Brieftasche in den Schnelleinstellungen angezeigt Schattierung mit der Beschreibung Karte hinzufügen, wenn in der Standardkarte keine Karte vorhanden ist Zahlungs-App einrichten oder entsperren, um sie zu verwenden, wenn Karten in der Standard-Zahlungs-App vorhanden sind.
  • Wenn das Smartphone gesperrt ist, wird auf dem Sperrbildschirm Dies wird durch die Einstellung Secure.LOCKSCREEN_SHOW_WALLET gesteuert, das in den Einstellungen festgelegt wird.
  • Wenn das Smartphone gesperrt ist, hat LOCKSCREEN_SHOW_WALLET den Wert false und keine Karte. bereits in der standardmäßigen NFC-Zahlungs-App vorhanden ist, wird die Brieftasche nicht auf dem Sperrbildschirm.
  • Wenn das Smartphone gesperrt ist, hat LOCKSCREEN_SHOW_WALLET den Wert true und keine Karte. bereits in der standardmäßigen NFC-Zahlungs-App vorhanden ist, wird die Brieftasche nicht auf dem Sperrbildschirm.
  • Wenn das Smartphone gesperrt ist, lautet der Wert für LOCKSCREEN_SHOW_WALLET true und die Karten in der standardmäßigen NFC-Zahlungs-App vorhanden ist, wird die Brieftasche auf dem Schloss angezeigt Bildschirm.
  • Smartphone entsperren, während die Brieftasche auf dem Schloss angezeigt wird führt dazu, dass die Karten erneut abgefragt werden. Dies kann zu mit unterschiedlichen Karteninhalten.

Tests zur Barrierefreiheit

  • TalkBack-Nutzer können durch Wischen nach links und rechts in der Wallet-Ansicht navigieren und sich die Inhaltsbeschreibungen der Karten anhören.
  • Wenn Sie bei aktiviertem TalkBack nach links und rechts wischen, werden die Karten der Reihe nach ausgewählt. TalkBack-Nutzer können bei einer NFC-Zahlung eine NFC-Zahlungsmethode auswählen und verwenden .

Manuelle Tests für Android 11

Für das Testen der Hauptfunktionen des Schnellzugriff-Wallet ist eine NFC-Zahlung erforderlich (echt oder gefälscht) und eine NFC-Zahlungs-App, die QuickAccessWalletService (Wallet-App). Wichtige Funktionen, die getestet werden müssen z. B. Verfügbarkeit, Nullstatus, Kartenauswahl und Sperrbildschirmverhalten.

Verfügbarkeit

  • Wenn die GLOBAL_ACTIONS_PANEL_ENABLED-Einstellung auf true und die Standardeinstellung gesetzt ist NFC-Zahlungs-App unterstützt die Funktion. Der Schnellzugriff auf die Brieftasche ist zugänglich.
  • Wenn die GLOBAL_ACTIONS_PANEL_ENABLED-Einstellung auf false und die Standardeinstellung gesetzt ist Die NFC-Zahlungs-App unterstützt die Funktion, das Schnellzugriff-Wallet ist nicht zugänglich zu machen.
  • Wenn die GLOBAL_ACTIONS_PANEL_ENABLED-Einstellung auf true und die Standardeinstellung gesetzt ist Die NFC-Zahlungs-App unterstützt die Funktion „Schnellzugriff Wallet“ nicht. nicht zugänglich ist.
  • Wenn die GLOBAL_ACTIONS_PANEL_ENABLED-Einstellung auf false und die Standardeinstellung gesetzt ist Die NFC-Zahlungs-App unterstützt die Funktion „Schnellzugriff Wallet“ nicht. nicht zugänglich ist.

Nullstatus

  • Wenn QuickAccessWalletService aktiviert und exportiert wird, aber nicht Karten nicht angezeigt wird, wird in der Wallet-Benutzeroberfläche für den Schnellzugriff die leere Statusansicht angezeigt.
  • Durch Klicken auf die leere Statusansicht wird die Wallet-App geöffnet.

    <ph type="x-smartling-placeholder">
    </ph> Leere Ansicht in der Wallet-Benutzeroberfläche für den Schnellzugriff
    Abbildung 11. Leere Ansicht im Schnellzugriff Wallet-Benutzeroberfläche

Status ungleich null

  • Wenn die Wallet-App eine oder mehrere Karten bereitstellt, werden die Karten angezeigt. in der Wallet-Benutzeroberfläche für den Schnellzugriff.

    <ph type="x-smartling-placeholder">
    </ph> Schnellzugriff auf Wallet-Benutzeroberfläche mit einer Karte
    Abbildung 12. Schnellzugriff auf die Wallet-Benutzeroberfläche mit einer Karte angezeigt wird.
  • Wenn die angezeigte Karte eine NFC-Zahlungsmethode darstellt, an ein NFC-Zahlungsterminal führt, wird diese Zahlungsmethode verwendet und die Wallet-Ansicht wird geschlossen.

  • Durch Klicken auf eine angezeigte Karte wird die Wallet-Ansicht geschlossen und die detaillierte Aktivität für diese Karte.

  • Wenn von QuickAccessWalletService mehrere Karten bereitgestellt werden, zwischen Karten wischen.

  • Das Dreipunkt-Menü enthält zwei Einträge: einen, mit dem die Wallet-App geöffnet wird und in der anderen die Option Karten und Karten/Tickets in den Einstellungen.

Sperrstatustests

  • Wenn das Smartphone gesperrt ist, wird die Sichtbarkeit der Brieftasche über das Settings.Secure.POWER_MENU_LOCK_SHOW_CONTENT-Einstellung, die auf das in den Einstellungen festgelegt wird.
  • Wenn das Smartphone gesperrt ist und POWER_MENU_LOCK_SHOW_CONTENT den Status „false“ hat, Brieftasche nicht angezeigt.
  • Wenn das Smartphone gesperrt ist und POWER_MENU_LOCK_SHOW_CONTENT den Status „true“ hat, Brieftasche angezeigt.
  • Smartphone entsperren, während die Brieftasche auf dem Schloss angezeigt wird führt dazu, dass die Karten erneut abgefragt werden. Dies kann zu mit unterschiedlichen Karteninhalten.

Tests zur Barrierefreiheit

  • TalkBack-Nutzer können durch Wischen nach links oder rechts in der Wallet-Ansicht navigieren. und sich die Inhaltsbeschreibungen der Karten anhören.
  • Wenn Sie bei aktiviertem TalkBack nach links und rechts wischen, werden die Karten der Reihe nach ausgewählt. TalkBack-Nutzer können bei einer NFC-Zahlung eine NFC-Zahlungsmethode auswählen und verwenden .