التحسين الكامل: اختتام "أسبوع تسليط الضوء على الأداء"
يستغرق الاطِّلاع على المقال 3 دقائق
لقد أمضينا الأسبوع الماضي في تقديم أفضل الممارسات والإرشادات التي تساعد في جعل تطبيقات Android أسرع وأصغر حجمًا وأكثر استقرارًا. بدءًا من الإمكانات الأساسية لمحسِّن R8 والتحسينات المستندة إلى الملف الشخصي، ووصولاً إلى تحسينات الأداء باستخدام Jetpack Compose، وإلى دليل جديد حول تحسين أداء تطبيقك، تناولنا الأدوات التي لا تتطلّب جهدًا كبيرًا وتؤدي إلى نتائج رائعة التي تحتاج إليها لإنشاء تطبيق فعّال.
تعمل هذه المشاركة كفهرس وخارطة طريق لإعادة الاطّلاع على هذه المراجع متى احتجت إلى تحسين الأداء. في ما يلي خمس نقاط رئيسية يمكن استخلاصها من رحلتنا معًا.
استخدام أداة تحسين R8 لتسريع تطبيقك
إنّ التغيير الوحيد الذي يمكنك إجراؤه والذي يحقّق أكبر تأثير بأقل جهد هو تفعيل محسِّن R8 بالكامل. ولا يقتصر دورها على تقليل حجم التطبيق، بل تعمل أيضًا على إجراء تحسينات شاملة على مستوى البرنامج لإعادة كتابة الرمز البرمجي بشكل أساسي بهدف تحسين الكفاءة. راجِع "قواعد Keep" واستعِد R8 في مهامك الهندسية.
تتوفّر مستندات محدّثة وموسّعة حول أداة التحسين R8 لمساعدتك في ذلك.
لاحظت منصة Reddit سرعة أكبر بنسبة% 40 في عمليات التشغيل على البارد وانخفاضًا بنسبة% 30 في أخطاء ANR بعد تفعيل وضع R8 الكامل.
يمكنك قراءة دراسة الحالة الكاملة على مدوّنتنا.
يستثمر المهندسون في Disney+ في أداء التطبيق ويعملون على تحسين تجربة المستخدم. في بعض الأحيان، يمكن أن يكون للتغييرات الصغيرة تأثير كبير. أثناء فحص إعدادات R8، تبيّن للفريق أنّه يتم استخدام العلامة -dontoptimize. بعد تفعيل التحسينات من خلال إزالة هذا الخيار، لاحظ فريق Disney+ تحسّنات كبيرة في أداء التطبيق.
لذا، في المرة القادمة التي يسألك فيها أحد عن الإجراءات التي يمكنك اتّخاذها لتحسين أداء التطبيق، ما عليك سوى مشاركة رابط هذه المشاركة معه.
مزيد من المعلومات في منشور المدوّنة الخاص باليوم الأول: استخدام R8 لتقليل حجم تطبيقك وتحسينه وتسريعه
توجيهك لتحقيق أداء أفضل
تزيل ملفات Baseline Profiles بشكل فعّال الحاجة إلى تجميع Just-in-Time، ما يؤدي إلى تحسين سرعة بدء التشغيل والتمرير والرسوم المتحركة وأداء العرض العام.تساهم ملفات تعريف بدء التشغيل في جعل عملية بدء تشغيل التطبيق أكثر سلاسة من خلال ترتيب ملفات classes.dex في تطبيقك بشكل ذكي.
ولمعرفة المزيد عن أهمية "ملفات Baseline" في أداء التطبيقات، يمكنك الاطّلاع على مدونة الهندسة في Meta التي شاركت فيها كيف ساهمت "ملفات Baseline" في تحسين العديد من مقاييس الأداء المهمة بنسبة تصل إلى%40 في جميع تطبيقاتها.
نواصل تحسين أداء Jetpack Compose في الإصدار 1.10. تُعدّ ميزات مثل التركيب القابل للإيقاف المؤقت ونافذة ذاكرة التخزين المؤقت القابلة للتخصيص ضرورية للحفاظ على عدم حدوث أي إيقاف مؤقت لعرض واجهة المستخدم عند التمرير عند التعامل مع عناصر القائمة المعقّدة.يمكنك الاطّلاع على أحدث حلقة من برنامج #TheAndroidShow حيث نوضّح ذلك بتفصيل أكبر.
مزيد من المعلومات في منشور المدوّنة الذي نشرناه يوم الأربعاء: اعتبارات أعمق بشأن الأداء
قياس الأداء يمكن أن يكون سهلاً في 3 خطوات بسيطة
لا يمكنك إدارة ما لا تقيسه. يقدّم دليل تحسين الأداء رحلة القياس على خمس خطوات، بدءًا من البيانات المتاحة بسهولة وصولاً إلى الأدوات المحلية المتقدّمة.
سنعلّمك في المستوى 1 كيفية استخدام البيانات المتاحة بسهولة من مؤشرات Android الحيوية التي توفّر لك بيانات ميدانية عن أخطاء ANR والأعطال والاستخدام المفرط للبطارية.
سنعلّمك أيضًا كيفية تحسين مستوى حسابك. على سبيل المثال، سنشرح كيفية الوصول إلى المستوى 3 من خلال اختبار الأداء المحلي باستخدام Jetpack Macrobenchmark وUiAutomator 2.4 API الجديدين لقياس أي تغيير في أداء تطبيقك والتحقّق منه بدقة.
مزيد من المعلومات في مدونتنا المنشورة يوم الخميس: [Link to Thursday's Blog: Leveling Guide for your Performance Journey]
تحسينات على تصحيح أخطاء الأداء
لا يجب أن يؤدي التحسين المتقدّم إلى عدم إمكانية قراءة تقارير الأعطال. تم تصميم ميزات جديدة لمساعدتك في تصحيح أخطاء R8 والعمل في الخلفية بثقة:
إعادة تتبُّع Logcat تلقائيًا
بدءًا من استوديو Android Narwhal، يمكن إزالة التشويش عن عمليات تتبُّع تسلسل استدعاء الدوال البرمجية تلقائيًا في نافذة "أداة Logcat". بهذه الطريقة، يمكنك الاطّلاع على أي أعطال وتصحيح أخطائها على الفور في إصدار جاهز للإنتاج.
قواعد الاحتفاظ الضيقة
في يوم الثلاثاء، أزلنا الغموض عن قواعد Keep اللازمة لإصلاح الأعطال أثناء وقت التشغيل، مع التركيز على كتابة قواعد محدّدة على مستوى الأعضاء بدلاً من أحرف البدل الواسعة النطاق. وبما أنّ هذا الموضوع مهم، أعددنا لك فيديو أيضًا.
وبفضل عملية التحقّق الجديدة المستندة إلى أداة Lint لقواعد Keep الواسعة النطاق، يوفّر لك الإصدار 3 من Otter في "استوديو Android" كل ما تحتاجه أيضًا.
لقد طرحنا أيضًا إرشادات جديدة حول الاختبار وتحديد المشاكل وحلّها في إعدادات R8 لمساعدتك في ضبط الإعدادات بشكل صحيح وبثقة.
مزيد من المعلومات في مشاركة المدوّنة التي نشرناها يوم الثلاثاء: إعداد قواعد الاحتفاظ في R8 وتحديد المشاكل وحلّها
العمل في الخلفية
شاركنا إرشادات حول تصحيح الأخطاء في السيناريوهات الشائعة التي قد تواجهها عند جدولة المهام باستخدام WorkManager.
تمنحك أداة فحص المهام في الخلفية تمثيلاً مرئيًا وعرضًا بيانيًا لمهام WorkManager، ما يساعد في تصحيح الأخطاء المتعلقة بتأخُّر أو تعذُّر تنفيذ المهام المُجدوَلة. وتسلط الصفحة المقصودة المحدّثة لمستندات "العمل في الخلفية" الضوء على واجهات برمجة التطبيقات الخاصة بمهام معيّنة والمحسَّنة لحالات استخدام محدّدة، ما يساعدك في تنفيذ المهام بشكل أكثر موثوقية.
مزيد من المعلومات في منشور المدوّنة الذي نشرناه يوم الأربعاء: اعتبارات أداء العمل في الخلفية
تحسين الأداء هو رحلة مستمرة
إذا نجحت في إكمال التحدي الذي طرحناه عليك لتفعيل وضع R8 الكامل هذا الأسبوع، ستكون خطوتك التالية هي دمج الأداء في خطة تحقيق أهداف منتجك باستخدام نتيجة أداء التطبيق. يساعدك هذا الإطار الموحّد في العثور على عناصر العمل التي تحقّق أعلى استفادة من أجل التحسين المستمر.
اختتمنا الأسبوع بجلسة #AskAndroid Live للإجابة عن الأسئلة، حيث أجاب المهندسون عن أصعب أسئلتك حول R8 و"تحسينات مستندة إلى الملف الشخصي" وغير ذلك. إذا فاتك البث، يمكنك مشاهدة إعادة البث.
نشكرك على انضمامك إلينا. ننصحك الآن بالبدء في بناء علامتك التجارية والحفاظ على هذا الزخم.
-
الفعاليات والبرامجسنبدأ بأكثر التغييرات تأثيرًا وأقلها جهدًا لتحسين أداء تطبيقك، وهو تفعيل أداة التحسين R8 في الوضع الكامل.
Ben Weiss • يستغرق الاطّلاع على المقال 5 دقائق -
الفعاليات والبرامجنحن بصدد فتح باب تقديم الطلبات للانضمام إلى برنامج Android XR Developer Catalyst، وهو مبادرة مخصّصة لتسريع عملية تطوير تطبيقات Android XR الجاهزة للإطلاق خلال العام المقبل.
يستغرق الاطّلاع على المقال دقيقة واحدة -
الفعاليات والبرامججدول فعاليات مؤتمر Google I/O متوفّر الآن.
يستغرق الاطّلاع على المقال دقيقة واحدة
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.