Fallstudien
Wie Uber mit der Restore Credentials API 4 Millionen manuelle Anmeldungen pro Jahr einspart
5 Minuten Lesezeit
Uber ist das weltweit größte Unternehmen für Mitfahrgelegenheiten. Es befördert Millionen von Menschen von A nach B und bietet außerdem Essenslieferungen, Transportleistungen für die Gesundheitsversorgung und Frachtlogistik an. Ein einfacher Zugriff ist entscheidend für den Erfolg des Unternehmens. Wenn Nutzer zu einem neuen Gerät wechseln, erwarten sie einen nahtlosen Übergang, ohne sich noch einmal in der Uber App anmelden oder die SMS-basierte Einmalpasswort-Authentifizierung durchlaufen zu müssen. Dieser häufige Gerätewechsel stellt eine Herausforderung dar, bietet aber auch eine Chance für eine starke Nutzerbindung.
Um die Nutzerkontinuität zu gewährleisten, haben die Entwickler von Uber die Funktion „Anmeldedaten wiederherstellen“ verwendet. Diese ist besonders nützlich, da 40% der Menschen in den USA jedes Jahr ihr Smartphone ersetzen. Nach einer Analyse der Nutzernachfrage und der Erstellung eines Code-Prototyps haben sie die Unterstützung für „Anmeldedaten wiederherstellen“ in der Uber App für Fahrgäste eingeführt. Um zu prüfen, ob die Wiederherstellung von Anmeldedaten die Reibung bei erneuten Anmeldungen verringert, hat das Uber-Team fünf Wochen lang einen erfolgreichen A/B-Test durchgeführt. Die Integration führte zu einer Reduzierung der manuellen Anmeldungen, die bei der großen Nutzerbasis von Uber schätzungsweise 4 Millionen manuelle Anmeldungen pro Jahr einspart.
Reibungslose Anmeldungen mit „Anmeldedaten wiederherstellen“
In der Vergangenheit gab es Versuche, Konten auf neuen Geräten mit Lösungen wie der regulären Datensicherung und BlockStore wiederherzustellen. Bei beiden Lösungen mussten jedoch Authentifizierungstokens direkt vom Quellgerät an das Zielgerät weitergegeben werden. Da Tokeninformationen sehr vertraulich sind, werden diese Lösungen nur in begrenztem Umfang verwendet, um Anmeldefelder auf dem Zielgerät vorab auszufüllen und einige Reibungspunkte bei den Anmeldevorgängen zu reduzieren. Passkeys werden ebenfalls verwendet, um eine sichere und schnelle Anmeldemethode zu bieten. Da sie jedoch vom Nutzer initiiert werden, ist ihre Wirkung auf nahtlose Geräteübergänge begrenzt.
„Einige Nutzer verwenden die Uber App nicht täglich, erwarten aber, dass sie funktioniert, wenn sie sie brauchen“, sagt Thomás Oliveira Horta, Android-Entwickler bei Uber. Es kann sehr unangenehm sein, wenn man feststellt, dass man abgemeldet ist, gerade als man die APP öffnet, um eine Fahrt mit seinem neuen Android-Smartphone zu bestellen.
Mit Anmeldedaten wiederherstellen konnten die Entwickler diese Lücke schließen. Die API generiert ein eindeutiges Token auf dem alten Gerät, das nahtlos und im Hintergrund auf das neue Gerät übertragen wird, wenn der Nutzer seine App-Daten während des Standard-Onboardings wiederherstellt. Dieser Vorgang nutzt den nativen Sicherungs- und Wiederherstellungsmechanismus von Android OS, um die sichere Übertragung des Wiederherstellungsschlüssels zusammen mit den Daten der App zu gewährleisten. Der optimierte Ansatz garantiert eine einfache und sichere Kontoübertragung, die die Sicherheitsanforderungen von Uber erfüllt, ohne dass zusätzliche Nutzereingaben oder Entwicklungsaufwand erforderlich sind.
Hinweis:Wiederherstellungsschlüssel und Passkeys verwenden dieselbe zugrunde liegende Serverimplementierung. Wenn Sie sie jedoch in Ihrer Datenbank speichern, müssen Sie zwischen ihnen unterscheiden. Diese Unterscheidung ist entscheidend, da von Nutzern erstellte Passkeys direkt vom Nutzer verwaltet werden können, während Wiederherstellungsschlüssel vom System verwaltet werden und in der Benutzeroberfläche ausgeblendet sind.
„Mit der Einführung von ‚Anmeldedaten wiederherstellen‘ in der Uber App für Fahrgäste haben wir eine konsistente Nutzung festgestellt“, sagt Thomás. „In der aktuellen Einführungsphase haben sich durchschnittlich 10.000 einzelne Nutzer pro Tag mit ‚Anmeldedaten wiederherstellen‘ angemeldet. Sie konnten die App zum ersten Mal auf einem neuen Gerät nahtlos nutzen. Wir gehen davon aus, dass sich diese Zahl verdoppeln wird, wenn wir die Einführung auf unsere gesamte Nutzerbasis ausweiten.“
Hinweise zur Implementierung
„Die Integration war recht einfach. Wir mussten nur geringfügige Anpassungen auf Android-Seite vornehmen, indem wir dem Beispielcode und der Dokumentation gefolgt sind“, sagt Thomás. „Unsere App hat bereits Credential Manager für Passkeys verwendet und das Back-End erforderte nur ein paar kleine Änderungen. Daher mussten wir nur die Credential Manager-Abhängigkeit auf die neueste Version aktualisieren, um Zugriff auf die neue Restore Credentials API zu erhalten. Wir haben einen Wiederherstellungsschlüssel über denselben Passkey-Erstellungsvorgang erstellt. Wenn unsere App auf einem neuen Gerät gestartet wird, sucht sie proaktiv nach diesem Schlüssel, indem sie versucht, den Passkey im Hintergrund abzurufen. Wenn der Wiederherstellungsschlüssel gefunden wird, wird er sofort verwendet, um den Nutzer automatisch anzumelden. Manuelle Anmeldungen sind dann nicht mehr erforderlich.
Während des Entwicklungsprozesses standen die Entwickler von Uber bei der Implementierung vor einigen Herausforderungen, von der Auswahl des richtigen Einstiegspunkts bis hin zur Verwaltung des Anmeldedatenlebenszyklus im Back-End.
Einstiegspunkt für „Anmeldedaten wiederherstellen“ auswählen
Die Entwickler haben sorgfältig die Vor- und Nachteile zwischen einer nahtlosen Nutzererfahrung und einer einfachen Implementierung abgewogen, als sie den Einstiegspunkt für „Anmeldedaten wiederherstellen“ für die Wiederherstellung ausgewählt haben. Letztendlich haben sie sich für eine Lösung entschieden, die ein ideales Gleichgewicht bietet.
„Dies kann beim Starten der App oder im Hintergrund während der Geräte-Wiederherstellung und -Einrichtung mit BackupAgent erfolgen“, sagt Thomás. „Der Einstiegspunkt für die Hintergrundanmeldung ist für den Nutzer nahtloser, stellte aber Herausforderungen bei Hintergrundvorgängen dar und erforderte die Verwendung der BackupAgent API, was die Komplexität einer so großen Codebasis wie der von Uber erhöht hätte.“ Sie entschieden sich, die Funktion beim ersten Starten der App zu implementieren, was deutlich schneller war als die manuelle Anmeldung.
Herausforderungen auf Serverseite bewältigen
Bei der Integration mit den WebAuthn APIs im Backend traten einige Herausforderungen auf Serverseite auf, da ihr Design davon ausging, dass immer eine Nutzerbestätigung erforderlich ist und dass alle Anmeldedaten in den Kontoeinstellungen eines Nutzers aufgeführt sind. Keine dieser Annahmen traf auf die nicht vom Nutzer verwalteten Schlüssel für „Anmeldedaten wiederherstellen“ zu.
Das Uber-Team hat dieses Problem behoben, indem es geringfügige Änderungen an den WebAuthn-Diensten vorgenommen und neue Anmeldedatentypen erstellt hat, um Passkeys von „Anmeldedaten wiederherstellen“ zu unterscheiden und sie entsprechend zu verarbeiten.
Lebenszyklus von „Anmeldedaten wiederherstellen“ verwalten
Die Entwickler von Uber standen bei der Verwaltung der Anmeldedatenschlüssel im Backend vor mehreren Herausforderungen. Sie erhielten dabei Unterstützung vom Backend-Entwickler Ryan O’Laughlin:
- Verhindern verwaister Schlüssel: Eine große Herausforderung war die Entwicklung einer Strategie zum Löschen registrierter öffentlicher Schlüssel, um zu verhindern, dass sie "verwaist" werden. Wenn die App beispielsweise deinstalliert wird, werden die lokalen Anmeldedaten gelöscht. Da diese Aktion jedoch nicht an das Backend gemeldet wird, bleibt ein ungenutzter Schlüssel auf dem Server.
- Gültigkeitsdauer von Schlüsseln ausbalancieren: Schlüssel benötigten eine Gültigkeitsdauer (TTL), die lang genug war, um Grenzfälle zu bewältigen. Wenn ein Nutzer beispielsweise eine Sicherung und Wiederherstellung durchführt und sich dann manuell vom alten Gerät abmeldet, wird der Schlüssel von diesem alten Gerät gelöscht. Der Schlüssel muss jedoch auf dem Server gültig bleiben, damit er vom neuen Gerät verwendet werden kann.
- Unterstützung mehrerer Geräte: Da ein Nutzer mehrere Geräte haben kann (und eine Sicherung und Wiederherstellung von jedem dieser Geräte aus initiieren kann), musste das Back-End mehrere Wiederherstellungsschlüssel pro Nutzer unterstützen (einen für jedes Gerät).
Die Entwickler von Uber haben diese Herausforderungen bewältigt, indem sie Regeln für das Löschen von Schlüsseln auf Serverseite basierend auf der Registrierung und Verwendung neuer Anmeldedaten festgelegt haben.
Die Funktion wurde in einem schnellen zweimonatigen Entwicklungs- und Testprozess von der Konzeption bis zur Auslieferung gebracht. Danach verlief ein fünfwöchiger A/B-Test (Zeit, um die Funktion mit Nutzern zu validieren) reibungslos und lieferte eindeutige Ergebnisse.
Nutzerabwanderung mit „Anmeldedaten wiederherstellen“ verhindern
Durch die Eliminierung manueller Anmeldungen auf neuen Geräten konnte Uber Nutzer binden, die den Anmeldevorgang auf einem neuen Gerät sonst möglicherweise abgebrochen hätten. Diese Verbesserung der Nutzerfreundlichkeit spiegelte sich in einer Vielzahl von Verbesserungen wider. Obwohl sie auf den ersten Blick geringfügig erscheinen mögen, ist die Wirkung angesichts der Größe der Nutzerbasis von Uber enorm:
- 3,4% weniger manuelle Anmeldungen (SMS-Einmalpasswort, Passwörter, soziale Anmeldung)
- 1,2% weniger Ausgaben für Anmeldungen, die ein SMS-Einmalpasswort erfordern
- 0,575% höhere Zugriffsrate auf Uber (% der Geräte, die den Startbildschirm der App erfolgreich erreicht haben)
- 0,614% mehr Geräte mit abgeschlossenen Fahrten
Heute ist „Anmeldedaten wiederherstellen“ auf dem besten Weg, ein Standardbestandteil der Uber App für Fahrgäste zu werden. Über 95% der Nutzer in der Testgruppe sind registriert.
Bei der Einrichtung eines neuen Geräts können Nutzer App-Daten und Anmeldedaten aus einer Sicherung wiederherstellen. Nachdem Uber für die Wiederherstellung ausgewählt wurde und der Hintergrundvorgang abgeschlossen ist, wird der Nutzer beim ersten Starten der App auf dem neuen Gerät automatisch angemeldet.
Die unsichtbare, aber massive Wirkung von „Anmeldedaten wiederherstellen“
In den kommenden Monaten plant Uber, die Integration von „Anmeldedaten wiederherstellen“ auszuweiten. Basierend auf den Ergebnissen des Tests schätzt das Unternehmen, dass durch die Änderung jährlich 4 Millionen manuelle Anmeldungen eingespart werden. Durch die Vereinfachung des App-Zugriffs und die Beseitigung eines wichtigen Pain Points baut Uber aktiv eine zufriedenere und loyalere Kundenbasis auf – Fahrt für Fahrt.
„Durch die Integration von ‚Anmeldedaten wiederherstellen‘ von Google konnten wir die nahtlose ‚Funktioniert einfach‘-Erfahrung bieten, die unsere Nutzer auf einem neuen Gerät erwarten“, sagt Matt Mueller, Lead Product Manager (Core Identity) bei Uber. „Dies führte direkt zu einer messbaren Umsatzsteigerung und zeigt, dass die Reduzierung von Reibungspunkten bei der Anmeldung entscheidend für die Nutzerinteraktion und ‑bindung ist.“
Möchten Sie die Anmeldeerfahrung Ihrer App verbessern?
Hier erfahren Sie, wie Sie mit Anmeldedaten wiederherstellen einen nahtlosen Anmeldevorgang beim Wechseln von Geräten ermöglichen können. Weitere Informationen finden Sie im Blogpost. In der neuesten Canary-Version von Android Studio Otter können Sie Ihre Integration validieren, da neue Funktionen helfen, die Sicherungs- und Wiederherstellungsmechanismen zu simulieren.
Wenn Sie Credential Manager noch nicht kennen, finden Sie in unserer offiziellen Dokumentation, im Codelab und in den Beispielen Hilfe bei der Integration.
Weiterlesen
-
Fallstudien
Zoho, eine umfassende cloudbasierte Software-Suite mit Schwerpunkt auf Sicherheit und nahtlosen Abläufen, hat durch die Einführung von Passkeys in seiner OneAuth Android App erhebliche Verbesserungen erzielt.
Niharika Arora, Joseph Lewis • 10 Minuten Lesezeit
-
Fallstudien
X ist eine Social-Media-App, die fast 500 Millionen Nutzern weltweit helfen soll, die ganze Geschichte mit allen Live-Kommentaren zu erfahren – von aktuellen Nachrichten und Unterhaltung bis hin zu Sport und Politik.
Niharika Arora • 3 Minuten Lesezeit
-
Fallstudien
Monzo ist eine digitale Bank im Vereinigten Königreich mit 15 Millionen Kunden und Tendenz steigend. Mit zunehmender Größe der App stellte das Entwicklungsteam fest, dass die App-Startzeit ein kritischer Bereich für Verbesserungen war. Es befürchtete jedoch, dass dafür erhebliche Änderungen an der Codebasis erforderlich wären.
Ben Weiss • 2 Minuten Lesezeit
Auf dem Laufenden bleiben
Lassen Sie sich Woche für Woche die neuesten Informationen zur Android-Entwicklung zusenden.