استطاعت شركة Monzo تقليل أكثر من 9,000 سطر من الرموز بالإضافة إلى تحسين معدّل الانسحاب بمقدار 5 مرات من خلال تطبيق CameraX.

Monzo هي خدمة وتطبيق مصرفية يقدّمان خدمات مالية رقمية ومستندة إلى الأجهزة الجوّالة فقط. وتتمثل مهمتهم في جعل الأموال مفيدة للجميع. ولتسجيل العملاء الجدد، يلتقط تطبيق Monzo صورًا لمستند تعريف (مثل جواز السفر أو رخصة القيادة أو بطاقة تعريف الهوية) ويلتقط فيديو ذاتيي لإثبات أن مستندات التعريف هي لمقدِّم الطلب.

الإجراءات التي اتخذتها الشركة

استخدمت الإصدارات المبكرة من تطبيق Monzo واجهات برمجة تطبيقات Camera2. أدّت الأعطال العشوائية والسلوكيات الغريبة على بعض الأجهزة إلى عدم متابعة 25% من العملاء المحتملين خطوات التقاط معلومات تحديد الهوية وتصوير فيديو ذاتي.

لمواجهة هذه التحديات، لجأت Monzo إلى CameraX، وهي مكتبة لدعم Jetpack وتم تصميمها لتسهيل عملية تطوير تطبيقات الكاميرا من أجل تنفيذ متطلبات التقاط الصور والفيديوهات. وباستخدام CameraController، نفّذت Monzo عملية التقاط صورة لمستند التعريف باستخدام طريقة takePicture(). في الفيديو الذاتي، استخدموا طريقتَي startRecording() وstopRecording(). وأرادوا إجراء تغييرات على التصميم خلال عملية التسجيل وأرادوا إنشاء مكتبة كاميرا أكثر وضوحًا تمنحهم مرونة أكبر في التصميم.

النتائج

ومن خلال إطلاق CameraX، تمكّن فريق Monzo من تبسيط الرموز البرمجية الخاصة بها، ما يجعلها أكثر قابلية للصيانة، كما ساعد في تبسيط عملية التطوير. أدى الانتقال إلى CameraX إلى تقليل الحوادث بشكل كبير ولم يعد هناك عمليات تنشيط عشوائية لفلاش الكاميرا. ساهم كل هذا في تقليل معدل الانسحاب في تدفق الاشتراك وتحسين ملاحظات المستخدمين.

أدى تبسيط الرمز الناتج عن استخدام CameraX إلى تقليل ما يقرب من 9,000 سطر من الرموز، بما في ذلك 6,000 سطر من رموز واجهة المستخدم. بالإضافة إلى تسهيل صيانة الرمز البرمجي وتبسيطه، ساهم CameraX أيضًا في تحسين تغطية الرموز البرمجية في اختبارات الوحدات.

والأهم من ذلك، أن التأثير في عملية الاشتراك كان كبيرًا. مع إطلاق CameraX وتغييرات تصميم التدفق المبسط، انخفض معدل الانسحاب من التقاط صور تعريف الهوية وتسجيل فيديو الصور الذاتية من 25% إلى حوالي 5%.

"بالنسبة إلينا، كانت CameraX تهدف بشكل أساسي إلى الاستقرار وتوفير تجربة دمج سهلة للمطورين لدينا. لقد كانت المكتبة المثالية بالنسبة لنا - أردنا فقط طريقة بسيطة لالتقاط الصور ومقاطع الفيديو. وقد أعطانا CameraX هذا، علاوةً على ذلك، أصبحت الرموز البرمجية أكثر بساطة وتحسّن تجربة المستخدم". Anastasios Morfopoulos—مطوِّر Android، Monzo

البدء

يُرجى الاطّلاع على مستندات CameraX لمعرفة طريقة تقديم رمز التقاط صور أكثر فعالية وتبسيطًا لتطبيقك أو لعبتك.