Uber, Restore Credentials API ile manuel girişleri yılda 4 milyon azaltıyor
Okuma süresi: 5 dk.
Uber, dünyanın en büyük araç paylaşımı şirketidir. Milyonlarca insanın bir yerden bir yere gitmesini sağlarken aynı zamanda yemek teslimatı, sağlık hizmetleri için ulaşım ve yük lojistiği hizmetleri de sunar. Erişim kolaylığı, uygulamanın başarısı için çok önemlidir. Kullanıcılar yeni bir cihaza geçtiklerinde Uber uygulamasında tekrar oturum açmaya veya SMS tabanlı tek kullanımlık şifre kimlik doğrulamasından geçmeye gerek kalmadan sorunsuz bir geçiş beklerler. Cihazların sık sık değiştirilmesi, kullanıcıları elde tutma konusunda hem zorluk hem de fırsat yaratıyor.
Uber mühendisleri, kullanıcı sürekliliğini sağlamak için Kimlik Bilgilerini Geri Yükleme özelliğini kullandı. Bu özellik, ABD'deki kullanıcıların% 40'ının her yıl akıllı telefonlarını değiştirdiği bir dönemde önemli bir araçtır. Kullanıcı talebini ve kod prototipini değerlendirdikten sonra Uber sürücü uygulamasında Restore Credentials desteğini kullanıma sundular. Uber ekibi, kimlik bilgilerini geri yüklemenin yeniden giriş yapma sürecindeki zorlukları ortadan kaldırmaya yardımcı olduğunu doğrulamak için beş hafta boyunca başarılı bir A/B denemesi gerçekleştirdi. Entegrasyon, manuel girişlerde azalma sağladı. Uber'in devasa kullanıcı tabanına yansıtıldığında, bu azalmanın yılda 4 milyon manuel girişi ortadan kaldıracağı tahmin ediliyor.
Kimlik Bilgilerini Geri Yükleme ile giriş sorunlarını ortadan kaldırma
Geçmişte, normal veri yedekleme ve BlockStore gibi çözümler kullanılarak yeni cihazlarda hesap geri yükleme girişimleri yapılmıştı. Ancak her iki çözümde de kimlik doğrulama jetonlarının doğrudan kaynak cihazdan hedef cihaza paylaşılması gerekiyordu. Jeton bilgileri son derece hassas olduğundan bu çözümler yalnızca hedef cihazdaki giriş alanlarını önceden doldurmak ve oturum açma akışları sırasında bazı sorunları azaltmak için belirli bir ölçüde kullanılır. Geçiş anahtarları da güvenli ve hızlı bir giriş yöntemi sunmak için kullanılır ancak kullanıcı tarafından başlatılması gerektiğinden cihazlar arasında sorunsuz geçişler üzerindeki etkisi sınırlıdır.
Uber'de Android mühendisi olarak çalışan Thomás Oliveira Horta, "Bazı kullanıcılar Uber uygulamasını her gün kullanmıyor ancak ihtiyaç duyduklarında sorunsuz çalışmasını bekliyorlar" diyor. "Yeni Android telefonunuzda yolculuk isteğinde bulunmak için uygulamayı açtığınızda oturumunuzun kapalı olduğunu görmek can sıkıcı ve moral bozucu bir deneyim olabilir."
Mühendisler, Kimlik Bilgilerini Geri Yükleme özelliğiyle bu boşluğu doldurmayı başardı. API, eski cihazda benzersiz bir jeton oluşturur. Kullanıcı, standart ilk katılım süreci sırasında uygulama verilerini geri yüklediğinde bu jeton sorunsuz ve sessiz bir şekilde yeni cihaza taşınır. Bu işlem, Android OS'in yerel yedekleme ve geri yükleme mekanizmasını kullanarak geri yükleme anahtarının uygulama verileriyle birlikte güvenli bir şekilde aktarılmasını sağlar. Bu kolaylaştırılmış yaklaşım, ek kullanıcı girişi veya geliştirme ek yükü olmadan Uber'in güvenlik şartlarını karşılayarak basit ve güvenli bir hesap aktarımı sağlar.
Not: Geri yükleme anahtarları ve geçiş anahtarları, aynı temel sunucu uygulamasını kullanır. Ancak bunları veritabanınıza kaydederken aralarında ayrım yapmanız gerekir. Kullanıcı tarafından oluşturulan geçiş anahtarları doğrudan kullanıcı tarafından yönetilebilirken, geri yükleme anahtarları sistem tarafından yönetilir ve kullanıcı arayüzünde gösterilmez. Bu nedenle, bu ayrım çok önemlidir.
Thomás, "Uber'in yolcu uygulamasında Kimlik Bilgilerini Geri Yükleme özelliğinin kullanıma sunulmasıyla birlikte tutarlı bir kullanım görmeye başladık" dedi. "Mevcut kullanıma sunma aşamasında ortalama 10.000 benzersiz günlük kullanıcı Restore Credentials ile oturum açtı ve uygulamayı yeni bir cihazda ilk kez açarken sorunsuz bir deneyim yaşadı. Bu özelliği tüm kullanıcı tabanımıza sunduğumuzda bu sayının iki katına çıkmasını bekliyoruz."
Uygulamada dikkat edilmesi gereken hususlar
Thomás, "Örnek kod ve belgeleri takip ederek Android tarafında küçük ayarlamalarla entegrasyonu oldukça kolay bir şekilde gerçekleştirdik." diyor. "Uygulamamızda geçiş anahtarları için zaten Kimlik Bilgisi Yöneticisi kullanılıyordu. Arka uçta yalnızca birkaç küçük değişiklik yapmamız gerekti. Bu nedenle, yeni Kimlik Bilgilerini Geri Yükle API'ye erişmek için Kimlik Bilgisi Yöneticisi bağımlılığını en yeni sürümüne güncellememiz yeterli oldu. Aynı geçiş anahtarı oluşturma akışı üzerinden bir geri yükleme anahtarı oluşturduk. Uygulamamız yeni bir cihazda başlatıldığında, sessiz bir geçiş anahtarı alma işlemi deneyerek bu anahtarı proaktif olarak kontrol eder. Geri yükleme anahtarı bulunursa kullanıcının oturumunu otomatik olarak açmak için hemen kullanılır ve manuel giriş işlemi atlanır."
Uber'in mühendisleri, geliştirme süreci boyunca doğru giriş noktasını seçmekten arka uçta kimlik bilgisi yaşam döngüsünü yönetmeye kadar uygulama sırasında birkaç zorlukla karşılaştı.
Kimlik Bilgilerini Geri Yükleme giriş noktasını seçme
Mühendisler, kurtarma için hangi Restore Credentials giriş noktasının kullanılacağını seçerken tamamen sorunsuz bir kullanıcı deneyimi ile uygulama kolaylığı arasındaki dengeyi dikkatlice değerlendirdi. Sonuç olarak, ideal bir denge sunan bir çözüme öncelik verdiler.
Thomás, "Bu işlem, uygulama başlatılırken veya cihaz geri yükleme ve kurulum sırasında arka planda BackupAgent kullanılarak yapılabilir." diyor. "Arka planda giriş giriş noktası kullanıcı için daha sorunsuz olsa da arka plan işlemleriyle ilgili zorluklar ortaya çıkardı ve BackupAgent API'nin kullanılmasını gerektirdi. Bu da Uber'inki kadar büyük bir kod tabanında karmaşıklığın artmasına neden olurdu." Özelliği, manuel girişe göre çok daha hızlı olan ilk uygulama başlatma sırasında uygulamaya karar verdiler.
Sunucu tarafındaki zorlukları ele alma
Arka uç WebAuthn API'leriyle entegrasyon sırasında sunucu tarafında birkaç sorun ortaya çıktı. Bu API'lerin tasarımında, kullanıcı doğrulamasının her zaman gerekli olacağı ve tüm kimlik bilgilerinin kullanıcının hesap ayarlarında listeleneceği varsayılmıştı. Bu varsayımların ikisi de kullanıcı tarafından yönetilmeyen Restore Credential anahtarları için geçerli değildi.
Uber ekibi, WebAuthn hizmetlerinde küçük değişiklikler yaparak bu sorunu çözdü. Geçiş anahtarlarını, geri yükleme kimlik bilgilerinden ayırt etmek ve uygun şekilde işlemek için yeni kimlik bilgisi türleri oluşturdu.
Kimlik Bilgilerini Geri Yükleme yaşam döngüsünü yönetme
Uber'in mühendisleri, arka uç mühendisi Ryan O'Laughlin'in özel desteğiyle arka uçta kimlik bilgisi anahtarlarını yönetirken çeşitli zorluklarla karşılaştı:
- Sahipsiz anahtarları önleme: Kayıtlı ortak anahtarların "sahipsiz" kalmasını önlemek için silme stratejisi belirlemek önemli bir zorluktu. Örneğin, uygulamanın yüklemesi kaldırıldığında yerel kimlik bilgisi silinir ancak bu işlem arka uca sinyal göndermediği için sunucuda kullanılmayan bir anahtar kalır.
- Anahtar kullanım ömrünü dengeleme: Anahtarların, uç durumları işleyecek kadar uzun bir "yaşam süresine" ihtiyacı vardı. Örneğin, bir kullanıcı yedekleme ve geri yükleme işlemi yaptıktan sonra eski cihazdan manuel olarak çıkış yaparsa anahtar o eski cihazdan silinir. Ancak yeni cihazın anahtarı kullanabilmesi için anahtarın sunucuda geçerli kalması gerekir.
- Birden fazla cihazı destekleme: Bir kullanıcının birden fazla cihazı olabileceğinden (ve bunlardan herhangi birinden yedekleme ve geri yükleme işlemi başlatabileceğinden) arka ucun, kullanıcı başına birden fazla Geri Yükleme Kimlik Bilgisi'ni (her cihaz için bir tane) desteklemesi gerekiyordu.
Uber mühendisleri, yeni kimlik bilgisi kaydı ve kimlik bilgisi kullanımına dayalı olarak sunucu tarafında anahtar silme kuralları oluşturarak bu zorlukların üstesinden geldi.
Özellik, iki ay gibi kısa bir sürede tasarlanıp geliştirildi, test edildi ve kullanıma sunuldu. Ardından, beş haftalık bir A/B denemesi (özelliği kullanıcılarla doğrulama süresi) sorunsuz bir şekilde gerçekleştirildi ve yadsınamaz sonuçlar elde edildi.
Kimlik Bilgilerini Geri Yükleme ile kullanıcıların ayrılmasını önleme
Uber, yeni cihazlarda manuel giriş yapma zorunluluğunu ortadan kaldırarak yeni bir cihazda oturum açma akışını terk edebilecek kullanıcıları elinde tuttu. Müşteri kolaylığındaki bu artış, çok çeşitli iyileştirmelere yansıdı ve ilk bakışta küçük görünse de Uber'in kullanıcı tabanı ölçeğinde etkisi çok büyük:
- Manuel girişlerde (SMS OTP, şifreler, sosyal giriş) %3,4 azalma
- SMS OTP gerektiren girişlerdeki masraflarda% 1,2 azalma
- Uber'in erişim oranında (uygulamanın ana ekranına başarıyla ulaşan cihazların yüzdesi) %0,575 artış.
- Tamamlanan gezilerin olduğu cihazlarda% 0,614 artış
Bugün, Restore Credentials, Uber'in yolcu uygulamasının standart bir parçası olma yolunda ilerliyor ve deneme grubundaki kullanıcıların% 95'inden fazlası kayıtlı durumda.
Yeni cihaz kurulumu sırasında kullanıcılar, uygulama verilerini ve kimlik bilgilerini bir yedekten geri yükleyebilir. Uber'i geri yüklemek üzere seçtikten ve arka plan işlemi tamamlandıktan sonra uygulama, yeni cihazın ilk başlatılmasında kullanıcının oturumunu otomatik olarak açar.
Kimlik Bilgilerini Geri Yükleme özelliğinin görünmez ama büyük etkisi
Uber, önümüzdeki aylarda Kimlik Bilgilerini Geri Yükleme entegrasyonunu genişletmeyi planlıyor. Deneme sonuçlarından yola çıkarak bu değişikliğin yıllık 4 milyon manuel girişi ortadan kaldıracağını tahmin ediyorlar. Uygulamaya erişimi basitleştirip önemli bir sorunu ortadan kaldırarak her yolculukta daha memnun ve sadık bir müşteri tabanı oluşturuyorlar.
Uber'de Baş Ürün Müdürü (Temel Kimlik) olan Matt Mueller, "Google'ın RestoreCredentials özelliğini entegre etmek, kullanıcılarımızın yeni bir cihazda beklediği sorunsuz 'sorunsuz çalışma' deneyimini sunmamızı sağladı" dedi. "Bu durum doğrudan gelirde ölçülebilir bir artış sağladı ve giriş yapma sürecindeki zorlukları azaltmanın kullanıcı etkileşimi ve elde tutma açısından çok önemli olduğunu kanıtladı."
Uygulamanızın giriş deneyimini iyileştirmeye hazır mısınız?
Restore Credentials ile cihaz değiştirirken sorunsuz bir giriş deneyimi sunmayı öğrenin ve blog yayınından daha fazla bilgi edinin. Android Studio Otter'ın en son Canary sürümünde, yeni özellikler yedekleme ve geri yükleme mekanizmalarını taklit etmeye yardımcı olduğu için entegrasyonunuzu doğrulayabilirsiniz.
Kimlik Bilgisi Yöneticisi'ni kullanmaya yeni başladıysanız entegrasyon konusunda yardım almak için resmi belgelerimizi, codelab'imizi ve örneklerimizi inceleyebilirsiniz.
-
Başarılı ÖrneklerWhatsApp, dünya genelinde milyarlarca kullanıcıya hizmet veren dünyanın en büyük mesajlaşma platformudur. Farklı bölgelerdeki kullanıcılar için varsayılan iletişim aracı olan WhatsApp, özel, güvenilir ve güvenli mesajlaşma imkanı sunar.
Niharika Arora, Tracy Agyemang, Mayank Jain • Okuma süresi: 8 dk. -
Başarılı ÖrneklerFlaş haberlerden eğlenceye, spordan siyasete kadar her konuda içerik sunan X, dünya genelinde yaklaşık 500 milyon kullanıcının canlı yorumlarla tüm hikayeyi öğrenmesine yardımcı olmayı amaçlayan bir sosyal medya uygulamasıdır.
Niharika Arora, Tracy Agyemang • Okuma süresi: 3 dk. -
Başarılı ÖrneklerGüneydoğu Asya'nın önde gelen süper uygulaması Grab, tek bir uygulama üzerinden sekiz ülkedeki milyonlarca kullanıcıya teslimat, mobilite ve finansal hizmetler sunuyor.
Ajesh Pai, Nguyen Van Minh, Tracy Agyemang • Okuma süresi: 5 dk.
Android geliştiriciliğiyle ilgili en son analizleri her hafta gelen kutunuza alın.