دراسات الحالة
حقّقت شركة Monzo تحسّنًا في مقاييس الأداء بنسبة تصل إلى% 35 من خلال تحديث بسيط إلى R8
قراءة لمدة دقيقتين
Monzo هو بنك رقمي في المملكة المتحدة يضم 15 مليون عميل، وما زال عدد عملائه في ازدياد. مع توسّع التطبيق، أدرك فريق الهندسة أنّ وقت بدء تشغيل التطبيق يمثّل مجالًا مهمًا للتحسين، ولكنّه كان قلقًا من أنّ ذلك سيتطلّب إجراء تغييرات كبيرة على قاعدة الرموز البرمجية.
من خلال تفعيل تحسينات R8 بالكامل، حقّقت Monzo انخفاضًا كبيرًا بنسبة% 35 في معدّل أخطاء "التطبيق لا يستجيب". وقد أثبت هذا التغيير البسيط أنّ التحسينات الفعّالة لا تتطلّب دائمًا جهودًا هندسية معقّدة.
تحقيق مكاسب كبيرة في الأداء باستخدام وضع R8 الكامل
رأت شركة Monzo أنّ استخدام وضع R8 الكامل هو حلّ سهل يستحق التجربة، وقد نجح في تحسين الأداء على مستوى جميع المقاييس:
- موثوقية بدء التشغيل: تحسّنت عمليات التشغيل على البارد بنسبة %30، وعمليات إعادة التشغيل البطيء بنسبة %24، وعمليات إعادة التشغيل السريع بنسبة %14.
- سرعة التشغيل: تحسّنت أوقات التشغيل عند النسبة المئوية الخمسين بمقدار% 11، وعند النسبة المئوية التسعين بمقدار %12.
- الكفاءة: تم تقليل حجم التطبيق الإجمالي بنسبة %9.
- الثبات: انخفاض أخطاء ANR بنسبة %35
تفعيل التحسينات من خلال تغيير واحد
تستخدم العديد من تطبيقات Android ملف إعداد تلقائيًا قديمًا يؤدي إلى إيقاف معظم وظائف أداة التحسين R8. التغيير الرئيسي الذي أجرته شركة Monzo لتحقيق هذه التحسينات في الأداء هو استبدال ملف proguard-android.txt التلقائي بملف proguard-android-optimize.txt. يزيل هذا التغيير التعليمات -dontoptimize ويسمح لبرنامج R8 بتنفيذ وظيفته بشكلٍ سليم.
buildTypes {
release {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
)
}
}
بعد إجراء هذا التغيير، ننصحك بالاطّلاع على ملفات إعداد Keep. توضّح هذه الملفات لبرنامج R8 الأجزاء التي يجب عدم تغييرها في الرمز البرمجي (عادةً لأنّها يتم استدعاؤها بشكل ديناميكي أو من خلال مكتبات خارجية). يعني ترتيب قواعد Keep غير الضرورية أنّ R8 يمكنه تنفيذ المزيد من المهام.
تحسين أداء التمرير باستخدام "الملفات الشخصية للمرجع"
لتعزيز تجربة المستخدم بشكل أكبر، نفّذت شركة Monzo ملفات Baseline Profiles، واستهدفت على وجه التحديد أداء التمرير والعرض في الخلاصة الرئيسية. وقد ضمنت هذه الاستراتيجية تحسين رحلات المستخدمين الأكثر شيوعًا، مثل فتح التطبيق وتصفّح الخلاصة، بشكل كامل. كان التأثير على العرض كبيرًا: أصبح أداء التمرير في الشاشة أسرع بنسبة% 71 في شريحة المستخدمين P90، وتحسّن أداء التمرير في الشاشة بنسبة %87 في شريحة المستخدمين P95. أصبح التنقّل في التطبيق أكثر سلاسة من ذي قبل.
أدرجت شركة Monzo هذا التحسين في عملية إصدارها للحفاظ عليه بمرور الوقت. يوضّح "نيوماير" قائلاً: "نبدأ عملية إنشاء ملف التعريف الأساسي كل يوم من أيام الأسبوع (قبل تشغيل عمليات الإنشاء الليلية) وننفّذ آخر التغييرات بعد الانتهاء من العملية".
مواكبة أحدث التقنيات في تطوير تطبيقات Android
توضّح تجربة Monzo الإمكانات المتاحة عند مواكبة أحدث اقتراحات أدوات إنشاء Android. على الرغم من أنّ التطبيقات القديمة غالبًا ما تواجه صعوبة في استخدام ميزة "الانعكاس" المعقّدة، وجدت شركة Monzo أنّ عملية الانتقال كانت بسيطة من خلال توثيق "قواعد الاحتفاظ" بشكل صحيح. يقول "نيوماير": "نضيف دائمًا تعليقًا يوضّح سبب تطبيق "قواعد الاحتفاظ"، حتى نعرف متى يمكننا إزالة القواعد بأمان".
ما هي نصيحة "نيوماير" للفرق الأخرى؟ مراجعة ممارساتك بانتظام للتأكّد من توافقها مع المعايير الحالية: "ننصحك بالاطّلاع على أحدث الاقتراحات من Google بشأن أداء التطبيق والتحقّق مما إذا كنت تتّبع جميع النصائح الحديثة".
للبدء ومعرفة المزيد عن R8، انتقِل إلى https://d.android.com/r8
متابعة القراءة
-
دراسات الحالة
أثناء عمل فريق الهندسة في Reddit مع فريق علاقات المطوّرين في Android، استخدم مقياس أداء التطبيق لتقييم تطبيقهم.
Ben Weiss • مدة القراءة: 4 دقائق
-
دراسات الحالة
TikTok هي منصة عالمية للفيديوهات القصيرة تشتهر بقاعدة المستخدمين الضخمة والميزات المبتكرة.
Ben Trengrove, Ajesh Pai • مدة القراءة: دقيقتان
-
دراسات الحالة
توفّر منصّتا Instagram وFacebook تشغيلاً فوريًا وتزيدان من تفاعل المستخدمين مع Media3 PreloadManager
في عالم وسائل التواصل الاجتماعي الديناميكي، يمكن جذب انتباه المستخدمين أو فقدانه بسرعة. تُعدّ تطبيقات Meta (Facebook وInstagram) من بين أكبر المنصات الاجتماعية في العالم، وهي تخدم مليارات المستخدمين على مستوى العالم.
Mayuri Khinvasara Khabya • مدة القراءة: 4 دقائق
البقاء على اطّلاع على آخر التحديثات
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.