نشرها نيهاريكا أرورا – كبير مهندسي علاقات المطورين في Google، وتوماس أوليفيرا هورتا – مهندس Android في Uber
كيف تقوم Uber بتقليل عمليات تسجيل الدخول اليدوية بمقدار 4 ملايين سنويًا باستخدام Restore Credentials API
اوبر هي أكبر شركة لمشاركة الرحلات في العالم، حيث تنقل ملايين الأشخاص من هنا إلى هناك بينما تدعم أيضًا توصيل الطعام ونقل الرعاية الصحية والخدمات اللوجستية للشحن. إن بساطة الوصول إليها أمر بالغ الأهمية لنجاحها؛ عندما يتحول المستخدمون إلى جهاز جديد، فإنهم يتوقعون انتقالًا سلسًا دون الحاجة إلى تسجيل الدخول مرة أخرى إلى تطبيق أوبر أو المرور عبر مصادقة كلمة المرور لمرة واحدة عبر الرسائل القصيرة. يمثل هذا الاستبدال المتكرر للأجهزة تحديًا، فضلاً عن فرصة للاحتفاظ القوي بالمستخدمين.
وللحفاظ على استمرارية المستخدم، لجأ مهندسو أوبر إلى استعادة بيانات الاعتماد الميزة، أداة أساسية في الوقت الذي يستبدل فيه 40% من الأشخاص في الولايات المتحدة هواتفهم الذكية كل عام. بعد تقييم طلب المستخدم والنماذج الأولية للتعليمات البرمجية، قدموا دعم استعادة بيانات الاعتماد في تطبيق اوبر رايدر. وللتحقق من أن استعادة بيانات الاعتماد تساعد في إزالة الاحتكاك عند إعادة تسجيل الدخول، أجرى فريق أوبر تجربة أ/ب ناجحة لمدة خمسة أسابيع. أدى التكامل إلى انخفاض في عمليات تسجيل الدخول اليدوية، والتي، عند عرضها عبر قاعدة مستخدمي Uber الضخمة، من المتوقع أن تقضي على 4 ملايين تسجيل دخول يدوي سنويًا.
القضاء على احتكاك تسجيل الدخول من خلال استعادة بيانات الاعتماد

تعمل واجهة Restore Credentials API على التخلص من عملية تسجيل الدخول اليدوية متعددة الخطوات على الأجهزة الجديدة.
كانت هناك محاولات سابقة لاستعادة الحساب على أجهزة جديدة باستخدام حلول مثل البيانات العادية نسخة احتياطية و BlockStore، على الرغم من أن كلا الحلين يتطلبان مشاركة رموز المصادقة المميزة مباشرةً، من الجهاز المصدر إلى الجهاز الوجهة. نظرًا لأن معلومات الرمز المميز حساسة للغاية، يتم استخدام هذه الحلول فقط إلى حد ما، لملء حقول تسجيل الدخول مسبقًا على الجهاز الوجهة وتقليل بعض الاحتكاك أثناء تدفقات تسجيل الدخول. تُستخدم مفاتيح المرور أيضًا لتوفير طريقة تسجيل دخول آمنة وسريعة، ولكن طبيعتها التي يبدأها المستخدم تحد من تأثيرها على التحولات السلسة للجهاز.
وقال توماس أوليفيرا هورتا، مهندس أندرويد في شركة أوبر: “لا يستخدم بعض المستخدمين تطبيق أوبر بشكل يومي، لكنهم يتوقعون أنه سيعمل فقط عندما يحتاجون إليه”. “إن اكتشاف أنك قمت بتسجيل الخروج بمجرد فتح التطبيق لطلب رحلة على هاتف Android الجديد الخاص بك يمكن أن يكون تجربة غير سارة ومزعجة.”
مع استعادة بيانات الاعتمادوتمكن المهندسون من سد هذه الفجوة. تنشئ واجهة برمجة التطبيقات رمزًا مميزًا فريدًا على الجهاز القديم، والذي يتم نقله بسلاسة وصمت إلى الجهاز الجديد عندما يستعيد المستخدم بيانات التطبيق الخاصة به أثناء عملية الإعداد القياسية. تستفيد هذه العملية من آلية النسخ الاحتياطي والاستعادة الأصلية لنظام التشغيل Android، مما يضمن النقل الآمن لمفتاح الاستعادة مع بيانات التطبيق. يضمن النهج المبسط نقل الحساب بشكل بسيط وآمن، مما يلبي متطلبات أمان Uber دون أي مدخلات إضافية من المستخدم أو تكاليف تطوير إضافية.
قال توماس: “مع اعتماد استعادة بيانات الاعتماد على تطبيق الركاب الخاص بشركة Uber، بدأنا نشهد استخدامًا متسقًا”. “متوسط 10.000 مستخدم يومي فريد قاموا بتسجيل الدخول باستخدام استعادة بيانات الاعتماد في مرحلة الطرح الحالية، واستمتعوا بتجربة سلسة عند فتح التطبيق لأول مرة على جهاز جديد. ونتوقع أن يصل هذا العدد مزدوج بمجرد توسيع نطاق الطرح ليشمل قاعدة المستخدمين بأكملها.”
اعتبارات التنفيذ
“كان التكامل سهلاً جدًا مع إجراء تعديلات طفيفة على جانب Android باتباع رمز العينة و الوثائققال توماس: “يستخدم تطبيقنا بالفعل برنامج Credential Manager لمفاتيح المرور، ولا تتطلب الواجهة الخلفية سوى بضع تعديلات صغيرة. لذلك، نحتاج ببساطة إلى تحديث تبعية Credential Manager إلى أحدث إصدار لها للوصول إلى واجهة برمجة التطبيقات Restore Credentials API الجديدة. لقد أنشأنا مفتاح استعادة عبر نفس الشيء تدفق إنشاء مفتاح المرور وعندما يتم تشغيل تطبيقنا على جهاز جديد، يتحقق التطبيق بشكل استباقي من هذا المفتاح من خلال محاولة استرداد مفتاح المرور الصامت. إذا تم العثور على مفتاح الاستعادة، فسيتم استخدامه على الفور لتسجيل دخول المستخدم تلقائيًا، وتجاوز أي تسجيل دخول يدوي.
طوال عملية التطوير، واجه مهندسو أوبر بعض التحديات أثناء التنفيذ، بدءًا من اختيار نقطة الدخول الصحيحة وحتى إدارة دورة حياة بيانات الاعتماد في الواجهة الخلفية.
اختيار نقطة دخول استعادة بيانات الاعتماد
قام المهندسون بوزن المفاضلات بعناية بين تجربة المستخدم السلسة تمامًا وبساطة التنفيذ عند اختيار استعادة بيانات الاعتماد نقطة الدخول لاستخدامها في الاسترداد. وفي النهاية، أعطوا الأولوية للحل الذي يوفر التوازن المثالي.
وقال توماس: “يمكن أن يحدث هذا أثناء تشغيل التطبيق أو في الخلفية أثناء استعادة الجهاز وإعداده، باستخدام BackupAgent”. “تعد نقطة إدخال تسجيل الدخول في الخلفية أكثر سلاسة بالنسبة للمستخدم، ولكنها تمثل تحديات مع عمليات الخلفية والاستخدام المطلوب لـ واجهة برمجة تطبيقات وكيل النسخ الاحتياطي, الأمر الذي كان من شأنه أن يؤدي إلى زيادة التعقيد في قاعدة بيانات كبيرة مثل قاعدة بيانات أوبر.” قرروا تنفيذ الميزة خلال إطلاق التطبيق الأول، والذي كان أسرع بكثير من تسجيل الدخول اليدوي.
معالجة التحديات من جانب الخادم
ظهرت بعض التحديات من جانب الخادم أثناء التكامل مع واجهات برمجة تطبيقات WebAuthn الخلفية، حيث يفترض تصميمها أن التحقق من المستخدم سيكون مطلوبًا دائمًا، وأن جميع بيانات الاعتماد سيتم إدراجها في إعدادات حساب المستخدم؛ لم ينجح أي من هذه الافتراضات مع مفاتيح استعادة بيانات الاعتماد التي لا يديرها المستخدم.
قام فريق Uber بحل هذه المشكلة عن طريق إجراء تغييرات طفيفة على خدمات WebAuthn، وإنشاء أنواع بيانات اعتماد جديدة لتمييز مفاتيح المرور عن استعادة بيانات الاعتماد ومعالجتها بشكل مناسب.
إدارة دورة حياة استعادة بيانات الاعتماد
واجه مهندسو أوبر العديد من التحديات في إدارة مفاتيح الاعتماد على الواجهة الخلفية، بدعم متخصص من مهندس الواجهة الخلفية ريان أولولين:
-
منع المفاتيح المعزولة: كان التحدي الكبير هو تحديد استراتيجية لحذف المفاتيح العامة المسجلة لمنعها من أن تصبح “يتيمة”. على سبيل المثال، يؤدي إلغاء تثبيت التطبيق إلى حذف بيانات الاعتماد المحلية، ولكن نظرًا لأن هذا الإجراء لا يشير إلى الواجهة الخلفية، فإنه يترك مفتاحًا غير مستخدم على الخادم.
-
موازنة عمر المفتاح: تحتاج المفاتيح إلى “وقت للعيش” يكون طويلاً بما يكفي للتعامل مع حالات الحافة. على سبيل المثال، إذا أجرى المستخدم عملية نسخ احتياطي واستعادة، ثم قام بتسجيل الخروج يدويًا من الجهاز القديم، فسيتم حذف المفتاح من هذا الجهاز القديم. ومع ذلك، يجب أن يظل المفتاح صالحًا على الخادم حتى يتمكن الجهاز الجديد من استخدامه.
-
دعم أجهزة متعددة: نظرًا لأن المستخدم قد يكون لديه أجهزة متعددة (ويمكنه بدء النسخ الاحتياطي والاستعادة من أي منها)، فإن الواجهة الخلفية تحتاج إلى دعم بيانات اعتماد الاستعادة المتعددة لكل مستخدم (واحدة لكل جهاز).
واجه مهندسو أوبر هذه التحديات من خلال وضع قواعد لحذف المفتاح من جانب الخادم بناءً على تسجيل بيانات الاعتماد الجديدة واستخدام بيانات الاعتماد.
انتقلت الميزة من التصميم إلى التسليم في عملية تطوير واختبار سريعة مدتها شهرين. بعد ذلك، جرت تجربة A/B لمدة خمسة أسابيع (حان الوقت للتحقق من صحة الميزة مع المستخدمين) بسلاسة وأسفرت عن نتائج لا يمكن إنكارها.
منع انسحاب المستخدم من خلال استعادة بيانات الاعتماد
من خلال القضاء على عمليات تسجيل الدخول اليدوية على الأجهزة الجديدة، احتفظت Uber بالمستخدمين الذين ربما تخلوا عن تدفق تسجيل الدخول على جهاز جديد. وقد انعكس هذا التعزيز في سهولة العملاء في مجموعة واسعة من التحسينات، وعلى الرغم من أنها قد تبدو طفيفة للوهلة الأولى، إلا أن تأثيرها هائل على نطاق قاعدة مستخدمي أوبر:
-
انخفاض بنسبة 3.4% في عمليات تسجيل الدخول اليدوية (الرسائل النصية القصيرة لمرة واحدة، كلمات المرور، تسجيل الدخول عبر وسائل التواصل الاجتماعي).
-
تخفيض بنسبة 1.2% في نفقات تسجيلات الدخول التي تتطلب رسالة نصية قصيرة لمرة واحدة (OTP).
-
زيادة بنسبة 0.575% في معدل الوصول إلى Uber (% من الأجهزة التي وصلت بنجاح إلى الشاشة الرئيسية للتطبيق).
-
ارتفاع بنسبة 0.614% في الأجهزة التي أكملت رحلاتها.
اليوم، أصبحت ميزة “استعادة بيانات الاعتماد” في طريقها إلى أن تصبح معيار جزء من تطبيق راكب أوبر، مع أكثر من 95% من المستخدمين في المجموعة التجريبية المسجلة.
[UI flow]
أثناء إعداد الجهاز الجديد، يمكن للمستخدمين استعادة بيانات التطبيق وبيانات الاعتماد من نسخة احتياطية. بعد اختيار Uber للاستعادة وانتهاء العملية في الخلفية، سيقوم التطبيق تلقائيًا بتسجيل دخول المستخدم عند التشغيل الأول للجهاز الجديد.
التأثير غير المرئي والضخم لاستعادة بيانات الاعتماد
وفي الأشهر المقبلة، تخطط أوبر لتوسيع تكامل استعادة بيانات الاعتماد. ومن خلال إسقاط نتائج التجربة، يقدرون أن التغيير سيزيل 4 ملايين تسجيل دخول يدوي سنويًا. ومن خلال تبسيط الوصول إلى التطبيق وإزالة نقطة الضعف الرئيسية، فإنهم يعملون بشكل نشط على بناء قاعدة عملاء أكثر رضاًا وولاءً. رحلة واحدة في وقت واحد.
وقال مات مولر، مدير المشروع الرئيسي للهوية الأساسية في أوبر: “لقد سمح لنا دمج RestoreCredentials من Google بتقديم تجربة سلسة “تعمل فقط” يتوقعها المستخدمون على جهاز جديد”. “وقد ترجم هذا بشكل مباشر إلى زيادة قابلة للقياس في الإيرادات، مما يثبت أن الحد من الاحتكاك بتسجيل الدخول هو المفتاح لتفاعل المستخدمين والاحتفاظ بهم.”
هل أنت مستعد لتحسين تجربة تسجيل الدخول لتطبيقك؟
تعرف على كيفية تسهيل تجربة تسجيل الدخول السلسة عند التبديل بين الأجهزة استعادة بيانات الاعتماد وقراءة المزيد في مشاركة مدونة. في أحدث كناري أندرويد ستوديو أوتر يمكنك التحقق من صحة التكامل، حيث تساعد الميزات الجديدة في محاكاة آليات النسخ الاحتياطي والاستعادة.
إذا كنت جديدًا في برنامج مدير الاعتماد، فيمكنك الرجوع إلى مسؤولنا الوثائق,
com.codelab و عينات للمساعدة في التكامل.

