المقاييس

  
تتبُّع مقاييس وقت التشغيل المختلفة لتطبيقك والإبلاغ عنها
آخر تعديل الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار التجريبي
12 آذار (مارس) 2025 - - 1.0.0-beta02 -

الإعلان عن التبعيات

لإضافة تبعية على "المقاييس"، يجب إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle ل تطبيقك أو وحدتك:

Groovy

dependencies {
    implementation "androidx.metrics:metrics-performance:1.0.0-beta02"
}

Kotlin

dependencies {
    implementation("androidx.metrics:metrics-performance:1.0.0-beta02")
}

لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإصدار.

الملاحظات

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

إنشاء مشكلة جديدة

اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.

الإصدار 1.0.0

الإصدار 1.0.0-beta02

12 آذار (مارس) 2025

تم إصدار androidx.metrics:metrics-performance:1.0.0-beta02. يتضمّن الإصدار 1.0.0-beta02 عمليات الربط هذه.

إصلاح الأخطاء

  • حلّ مشاكل الأعطال DelegatingFrameMetricsListener cannot be cast... (Id891c، b/311218678)

الإصدار 1.0.0-beta01

10 كانون الثاني (يناير) 2024

كانت واجهة برمجة التطبيقات ووظائف هذه المكتبة ثابتة لبعض الوقت. ينقل هذا الإصدار المكتبة إلى الإصدار التجريبي.

تم إصدار androidx.metrics:metrics-performance:1.0.0-beta01. يحتوي الإصدار 1.0.0-beta01 على هذه المراجعات.

الإصدار 1.0.0-alpha04

5 نيسان (أبريل) 2023

يُعدّل هذا الإصدار ميزة JankStats لتشمل أحدث الإصلاحات، والتي تتضمّن معلومات أكثر دقة وشمولية حول التوقيت.

تم إصدار androidx.metrics:metrics-performance:1.0.0-alpha04. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أصبحت cpuDuration أكثر دقة، كما تم توفير totalDuration جديدة في الإصدار 31 من واجهة برمجة التطبيقات (I59ce8، b/243694893).

الإصدار 1.0.0-alpha03

27 تموز (يوليو) 2022

تم إصدار androidx.metrics:metrics-performance:1.0.0-alpha03. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.

  • يتضمّن هذا الإصدار تحسينات بسيطة على واجهة برمجة التطبيقات مع اقتراب المكتبة من الإصدار التجريبي. يزيل أحد التغييرات في واجهة برمجة التطبيقات Executor من طريقة إنشاء createAndTrack() لإنشاء عنصر JankStats. يؤثر ذلك في طلب إعادة الاتصال OnFrameListener، لأنّه يتم الآن استدعاء هذا المستمع في سلسلة المهام التي تنقل بيانات كل لقطة إلى JankStats (سلسلة المهام Main/UI في الإصدارات الأقدم من Android 24 وسلسلة المهام FrameMetrics في الإصدارات 24 من Android والإصدارات الأحدث). بالإضافة إلى ذلك، تتم إعادة استخدام عنصر FrameData الذي تم تمريره إلى المستمع في كل لقطة، لذا يجب نسخ البيانات من هذا العنصر وتخزينها مؤقتًا في مكان آخر أثناء طلب إعادة الاتصال، لأنّه يجب اعتبار هذا العنصر قديمًا فور عودة المستمع.

  • تم أيضًا إصلاح العديد من الأخطاء، بما في ذلك بعض مشاكل المعالجة المتزامنة.

  • أخيرًا، يعني الإصلاح المتعلق بإعادة استخدام FrameData (المذكور أعلاه) أنّه لا تتوفّر الآن أيّ عمليات تخصيص لكل إطار بسبب إرسال مقاييس الإطارات. لم تكن هناك عمليات تخصيص كثيرة في السابق، ولكن النهج الجديد يعني أنّه يمكنك استخدام JankStats بدون تكبد أيّ تكلفة إضافية لجمع القمامة لكلّ إطار في تطبيقك.

تغييرات واجهة برمجة التطبيقات

  • تم تعديل أسماء الطرق والمَعلمات في PerformanceMetricsState لجعل نتائج هذه الطلبات أكثر وضوحًا. (I56da5، b/233421985)
  • تمت إضافة اختبارات قياس الأداء لتتبُّع عمليات التوزيع، وتمّت إزالة بعض عمليات التوزيع الداخلية المرتبطة بإدارة الحالة وإعداد التقارير. يُرجى العِلم أنّ العنصر FrameData الذي تم تمريره إلى المستمعين يُعتبر الآن متقلبًا، وسيتم إعادة استخدام هذه البنية للإطار التالي، ولن تكون البيانات موثوقة إلا إلى أن يعود المستمع.
  • تمت إزالة Executor من المنشئ لـ JankStats، ويتم الآن استدعاء المستمعين في أي سلسلة محادثات تم استلام البيانات الداخلية عليها. (I12743)

إصلاح الأخطاء

  • تم إصلاح عطل بسبب الإزالة المزدوجة لـ OnFrameMetricsAvailableListener (I44094، b/239457413)
  • العودة إلى المنطق الأصلي لنشر OnPreDrawListener رسالة في مقدمة "قائمة الانتظار"، للحصول على توقيت إطارات أكثر اتساقًا ويمكن التنبؤ به (I05a43، b/233358407)
  • تم إصلاح خطأ ConcurrentModificationException الذي كان يتم فيه تعديل قائمة المفوَّضين للسماع أثناء تكرارها أيضًا لإرسال بيانات كل إطار. (Ib7693، b/236612357)

الإصدار 1.0.0-alpha02

29 حزيران (يونيو) 2022

تم إصدار androidx.metrics:metrics-performance:1.0.0-alpha02. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تمت إعادة تسمية MetricsStateHolder إلى "المالك" فقط (ضمن PerformanceMetricsState): (I5a4d9 وb/226565716 وb/213499234)

إصلاح الأخطاء

  • تم حلّ مشكلة التوقيت التي كان من الممكن فيها استبدال الحالات بقيم جديدة قبل معالجة اللقطات التي كانت الحالة القديمة فيها صحيحة (aosp/2061892 وb/213499234).
  • تم إصلاح استثناء التعديل المتزامن في إضافة/إزالة المستمعين (aosp/2092714 وb/213499234)
  • تمّت تحسين دقة عمليات احتساب startTime (aosp/2027704 وb/213245198)
  • تم إصلاح خطأ في تنفيذ FrameData.equals() (aosp/2025866، b/218296544)

الإصدار 1.0.0-alpha01

9 شباط (فبراير) 2022

تم إصدار androidx.metrics:metrics-performance:1.0.0-alpha01. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.

الميزات الجديدة

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