قياس أداء تطبيقك (المشاهدات)

المفاهيم وتنفيذ Jetpack Compose

يُعدّ قياس الأداء طريقة لفحص أداء تطبيقك ومراقبته. يمكنك إجراء قياسات الأداء بانتظام لتحليل مشاكل الأداء وتصحيح الأخطاء والمساعدة في ضمان عدم حدوث تراجعات في التغييرات الأخيرة.

يوفّر Android مكتبتَين ومنهجَين لقياس الأداء من أجل تحليل واختبار أنواع مختلفة من المواقف في تطبيقك: Macrobenchmark وMicrobenchmark.

Macrobenchmark

تقيس مكتبة Macrobenchmark تفاعلات المستخدم النهائي الأكبر حجمًا، مثل بدء التشغيل والتفاعل مع واجهة المستخدم والصور المتحركة. توفّر المكتبة تحكّمًا مباشرًا في بيئة الأداء التي تختبرها. تتيح لك هذه الأداة التحكّم في عملية التجميع وبدء تشغيل تطبيقك وإيقافه لقياس وقت بدء تشغيل التطبيق أو التمرير فيه بشكل مباشر.

تُدخِل مكتبة Macrobenchmark الأحداث وتراقب النتائج خارجيًا من تطبيق اختباري تم إنشاؤه باستخدام اختباراتك. لذلك، عند كتابة مقاييس الأداء، لا يمكنك استدعاء رمز تطبيقك مباشرةً، بل يمكنك التنقّل داخل تطبيقك كمستخدم.

قياس الأداء الدقيق

تتيح لك مكتبة Microbenchmark قياس أداء رمز التطبيق مباشرةً في حلقة تكرار. تم تصميم هذا الخيار لقياس عمل وحدة المعالجة المركزية (CPU) الذي يقيّم الأداء في أفضل حالاته، مثل الوصول إلى ذاكرة التخزين المؤقت والوصول إلى القرص، والذي قد يظهر مع حلقة داخلية أو دالة نشطة معيّنة. يمكن للمكتبة قياس الرمز الذي يمكنك استدعاؤه مباشرةً بشكل منفصل فقط.

في ما يلي حالات جيدة لقياس الأداء:

  • عندما يحتاج تطبيقك إلى معالجة بنية بيانات معقّدة
  • عندما يحتوي تطبيقك على خوارزمية معيّنة تتطلّب قدرًا كبيرًا من العمليات الحسابية ويتم استدعاؤها عدّة مرات أثناء تشغيل التطبيق

يمكنك أيضًا قياس أجزاء من واجهة المستخدم. على سبيل المثال، يمكنك قياس تكلفة ربط عنصر RecyclerView، أو الوقت الذي يستغرقه تضخيم التنسيق، أو أداء تمرير التنسيق والقياس لفئة View.

ومع ذلك، لا يمكنك قياس مدى مساهمة الحالات التي تم قياسها في تجربة المستخدم الإجمالية. في بعض السيناريوهات، لا يوضّح لك قياس الأداء ما إذا كنت تعمل على تحسين مشكلة في الأداء، مثل انخفاض عدد اللقطات أو وقت بدء تشغيل التطبيق. لهذا السبب، من المهم تحديد هذه العوائق أولاً باستخدام أداة تحليل الأداء في Android. بعد العثور على الرمز الذي تريد التحقيق فيه وتحسينه، يمكن تشغيل حلقة قياس الأداء بشكل متكرر لإنشاء نتائج أقل تشويشًا. يتيح لك هذا التركيز على مجال واحد للتحسين.

لا تقدّم مكتبة Microbenchmark معلومات إلا عن تطبيقك، وليس عن النظام بشكل عام. لذلك، من الأفضل تحليل أداء الحالات الخاصة بالتطبيق، وليس تلك التي قد تتعلق بمشاكل النظام بشكل عام.

مقارنة مكتبة مقاييس الأداء

Macrobenchmark قياس الأداء الدقيق
الوظيفة قياس نقاط الدخول أو التفاعلات عالية المستوى، مثل بدء النشاط أو التمرير في قائمة. قياس الوظائف الفردية
النطاق اختبار خارج العملية للتطبيق بالكامل اختبار قيد المعالجة لعمل وحدة المعالجة المركزية
السرعة سرعة تكرار متوسطة ويمكن أن تتجاوز مدتها دقيقة واحدة. سرعة التكرار: غالبًا ما يستغرق ذلك أقل من 10 ثوانٍ.
التتبع تتضمّن النتائج سجلّات تتبّع النظام. تتضمّن النتائج سجلّ تتبّع النظام وسجلّ الإجراءات بشكل تلقائي.