Josh هو تطبيق فيديوهات قصيرة تم إنشاؤه في الهند، تم إطلاقه في آب (أغسطس) 2020. وهو أيضًا أحد أسرع تطبيقات الفيديوهات القصيرة نموًا في الهند، إذ بلغ عدد المستخدمين النشطين شهريًا (MAU) أكثر من 124 مليون مستخدم نشط يوميًا (MAU) و60 مليون مستخدم نشط يوميًا (DAU).
يعد تحسين Josh عبر مجموعة من الأجهزة (عالية أو متوسطة أو منخفضة) والحفاظ على تجربة قياسية عبر جميع هذه الأجهزة أمرًا معقدًا لأي مطور تطبيقات، وقد فهم المطورون في جوش ذلك من البداية. كان تحسين "مؤشرات Android الحيوية" أحد المهام الرئيسية خلال الدورات المتكررة، وقد تم إيلاء أهمية لإضفاء البهجة على المستخدمين من خلال تحسين وقت بدء تشغيل التطبيق وسرعة الاستجابة.
كان لاستجابة التطبيق ووقت بدء تشغيله أهمية كبيرة أيضًا، حيث كان الفيديو هو التنسيق الأساسي الذي يتفاعل معه المستخدمون ويشاهدونه على التطبيق. ويمكن أن يؤدي أي تأخير في بث الفيديو أو أثناء التفاعل في التفاعلات المختلفة إلى فقدان الاهتمام ومغادرة التطبيق.
من خلال الاستثمار في أداء وقت بدء تشغيل التطبيق، حسّن "جوش" وقت بدء تشغيل التطبيق بنسبة 30% للمستخدم العادي وأصبح أسرع بمقدار 3 مرات تقريبًا بالنسبة إلى حوالي 10% من المستخدمين على الأجهزة القديمة والمنخفضة.
التحدّي
شهد تطبيق Josh تطوّرًا سريعًا وصل إلى أكثر من 100 مليون مستخدم نشط شهريًا في أقل من عام. في أغلب الأحيان، في السباق على إطلاق الميزات التي تقودها المنتجات أو تقودها الأحداث، تتراجع أهمية تحسين التطبيقات عن غير قصد. ساعدت عمليات تدقيق التطبيق والملاحظات الهيكلية من Google على تحديد هذه المشكلات في وقت مبكر ووضع مسار لإصلاحها.
كيفية التنفيذ
أثناء مراقبة "مؤشرات Android الحيوية"، تم رصد فرصة لتحسين بدء تشغيل التطبيق. قرر الفريق إعطاء الأولوية لتحسين أوقات التشغيل البارد، حيث سيؤدي ذلك تلقائيًا إلى تحسين أوقات البدء الدافئ والساخن.
تمكّن الفريق من إجراء تحقيقات مكثفة وتحديد المؤثِّرات السلبية من خلال استخدام أدوات تتبُّع مخصَّصة متعددة، مثل نظام systrace وAndroid Studio Profiler وPerfetto. وكان من الواضح أنه يمكن تحسين الوقت الذي تستغرقه فئة التطبيق onCreate والطرق المتزامنة الأخرى.
إليك الخطوات التي اتخذها الفريق تحديدًا
- تعريف كل كتلة من التعليمات البرمجية التي يتم تنفيذها أثناء بدء تشغيل التطبيق.
- تحليل تتبعات النظام باستخدام أدوات أداء Android مثل Perfetto وSystrace وDummpsys وغيرها
- تم التحقق من تأثير حِزم SDK التابعة لجهات خارجية أثناء بدء تشغيل التطبيق، وتم إيقاف التشغيل التلقائي لبعض حِزم SDK التابعة لجهات خارجية.
- تم استبعاد المكتبات القديمة
- تم تأجيل بعض الوحدات وتنفيذها في الخلفية.
- تم تقليل حجم العناصر القابلة للرسم على شاشة البداية عند بدء التشغيل وتحسينها لتناسب حجم الشاشة.
تم التحقّق من صحة كل ما سبق من خلال إجراء اختبارات معزولة للتأكد من تأثيرها الإيجابي في التطبيق، من خلال محاكاة عمليات التشغيل على البارد ودمج مكتبة مقياس الأداء الفائق في Jetpack.
النتائج
لم تؤد هذه التغييرات إلى تحسُّن فوري في جميع المقاييس، بل ساعدت أيضًا في تحسين تجربة المستخدم الإجمالية، إلى جانب الدروس المستفادة التي لا تقدر بثمن لفريق التطوير في Josh.
- ساعد تحسين معدّلات الارتداد والحفاظ على المستخدمين "جوش" في الاحتفاظ بأكثر من مليون مستخدم مقارنةً بالخط الأساسي. كما أدى التركيز على هذين المقياسين إلى تحسين التفاعل العام داخل التطبيق أيضًا.
- أظهرت تقييمات "متجر Play" ارتفاعًا إيجابيًا بعد إطلاق التطبيق مع تحسينات في الشركات الناشئة.
- ارتفع وقت بدء تشغيل التطبيق بنسبة 30% للمستخدم العادي وأصبح أسرع بمعدّل 3 مرات بالنسبة إلى حوالي 10% من المستخدمين على الأجهزة القديمة والمنخفضة، ما يساعد في تحسين سرعة استجابة التطبيق بشكلٍ كبير لهؤلاء المستخدمين.
والأهم من ذلك أنّ هذا التمرين الموجَّه إلى تحسين "مؤشرات Android الحيوية" جمع الفريق بأكمله معًا، ما أدّى إلى زيادة تحفيز الفريق، لا سيّما الأعضاء المبتدئين. وقد عزّزت هذه المؤشرات أهمية "مؤشرات أداء YouTube" وأدّت إلى أن يستخدم الفريق بعض المعلومات التي توصّل إليها في تطبيقاتهم الأخرى.
"عندما يجتمع الشركاء في منظومة متكاملة معًا، تنمو المنظومة المتكاملة معًا. قوة البيانات والتحليلات غير مسبوقة. بصفتنا منصّة تركّز على صنّاع المحتوى أولاً وتركّز على المحتوى وتركّز على المستهلكين، ركّزنا دائمًا على توفير أفضل تجربة للمستخدم، وهي تعتمد بشكل كبير على ثبات التطبيق. شهد جوش نموًا سريعًا وسريعًا بعد إطلاقه. ساعدنا العمل عن كثب مع فريق Google Play في تحديد ومعالجة التحديات مثل استقرار عمل التطبيقات وتحسينها في وقت مبكر. وقد ساعدتنا جهودنا مع Google في تحقيق استقرار أفضل وتحسينات في الحفاظ على المستخدمين ومعدّل تفاعلهم".
"شيليندرا شارما"، نائب الرئيس الأول للمنتجات والهندسة في VerSe Innovation