تم إيقاف خدمةTraceview نهائيًا. إذا كنت تستخدم الإصدار Android Studio 3.2 أو إصدار أحدث، عليك بدلاً من ذلك استخدام
محلل وحدة المعالجة المركزية (CPU) لفحص
.trace
الملفات التي تم التقاطها من خلال
قياس أداء تطبيقك
في الفئة Debug
وتسجيل عمليات تتبُّع الطرق الجديدة وحفظ ملفات .trace
وفحص
استخدام وحدة المعالجة المركزية (CPU) في الوقت الفعلي لعمليات تطبيقك.
Traceview هي أداة تقدّم تمثيلات رسومية
لسجلات التتبُّع. يمكنك إنشاء السجلات من خلال قياس تأثير الرمز مع الفئة Debug
. تُعدّ طريقة التتبع هذه دقيقة للغاية لأنه يمكنك تحديد المكان الذي تريد أن تبدأ فيه في التعليمة البرمجية بالضبط وإيقاف تسجيل بيانات التتبع. إذا لم تكن قد أنشأت إلى الآن سجلات التتبُّع هذه
واحفظها من جهازك المتصل بجهازك المحلي، انتقِل إلى إنشاء
سجلّات التتبُّع من خلال قياس أدوات تطبيقك.
يساعد فحص هذه السجلّات باستخدام Traceview في تصحيح أخطاء تطبيقك
وأداء الملف الشخصي.
ملاحظة: يمكنك استخدام
dmtracedump
من سطر الأوامر لإنشاء
مخطّطات بيانية لتكديس الاستدعاءات
لملفات سجلّ التتبُّع.
إذا لم تكن بحاجة إلى عرض سجلات التتبّع التي سجّلتها من خلال قياس تأثير تطبيقك باستخدام الفئة Debug
، يمكنك استخدام أداة تحليل وحدة المعالجة المركزية (CPU) المضمَّنة في الإصدار Android Studio 3.0 والإصدارات الأحدث لفحص سلاسل محادثات تطبيقك وتسجيل عمليات تتبُّع الطرق.
فتح سجلّ تتبُّع باستخدام Traceview
لفتح سجلّ تتبُّع باستخدام Traceview من "استوديو Android"، اتّبِع الخطوات التالية:
- ابدأ تشغيل Android Device Monitor.
- في Android Device Monitor (مراقبة جهاز Android)، اختَر File (ملف) > Open File (فتح ملف).
- انتقِل إلى ملف
.trace
الذي تريد فحصه. - انقر على فتح.
ملاحظة: إذا كنت تحاول عرض سجلات تتبُّع
تطبيق تم إنشاؤه مع تفعيل ميزة تقليص الرموز (مثل إصدار إصدار)،
قد يتم إخفاء مفاتيح فك تشفير بعض الطرق وأسماء الأعضاء. يمكنك استخدام ملف ProGuard
mapping.txt
لمعرفة الأسماء الأصلية غير المشفَّرة.
ولمزيد من المعلومات عن هذا الملف، يُرجى الاطّلاع على فك ترميز تتبُّع تسلسل استدعاء الدوال البرمجية
المشفّرة.
ملاحظة: تم إيقاف استخدام traceview
من سطر الأوامر نهائيًا.
نظرة عامة على Traceview
بعد فتح سجلّ تتبُّع، تعرض Traceview بيانات السجلّ باستخدام اللوحتَين التاليتَين:
- جزء المخطط الزمني الذي يوضح وقت دخول كل سلسلة محادثات إلى طريقة ما وخروجها منها
- جزء الملف الشخصي الذي يلخّص تنفيذ كل سلسلة محادثات خلال فترة سجلّ التتبُّع.
تقدم الأقسام أدناه معلومات إضافية عن لوحات نتائج طريقة التتبع.
جزء المخطط الزمني
يوضح الشكل 1 لقطة مقرّبة لجزء المخطط الزمني. يظهر تنفيذ كل سلسلة محادثات في صفها الخاص، مع زيادة الوقت المنقضي باتجاه اليمين. تظهر كل طريقة بألوان مختلفة. تعرض الخطوط الرقيقة أسفل الصف الأول العناصر الثانوية (من الإدخال إلى الخروج) للطريقة المحددة.
جزء الملف الشخصي
كما هو موضح في الشكل 2، يوفر جزء الملف الشخصي قائمة بكل طريقة نفذها النظام خلال فترة سجل التتبع والوقت المستغرق في تنفيذ هذه الطرق. يُشار إلى الطريقة التي تستدعي طريقة أخرى باسم العناصر الرئيسية، ويُشار إلى الطرق التي يستدعيها أحد الوالدَين على أنّها التابعة لها. وعندما تختار طريقة بالنقر فوقها، سيتم عرض كل من العناصر الرئيسية والفرعية لها ضمن عُقدتين منفصلتين.
لكل طريقة (عقدة ذات مستوى أعلى)، يعرض الجدول الأوقات الشاملة والحصرية (بالمللي ثانية) والنسبة المئوية للوقت الإجمالي. الوقت الحصري هو الوقت المستغرق في تنفيذ التعليمات البرمجية الخاصة بالطريقة، في حين أن الوقت الشامل هو الوقت المستغرق في تنفيذ التعليمة البرمجية الخاصة بالطريقة بالإضافة إلى الوقت المقضي في تنفيذ عناصرها الثانوية. يتم الإبلاغ عن معلومات التوقيت أيضًا من حيث وقت وحدة المعالجة المركزية والوقت الفعلي. ولا يأخذ وقت وحدة المعالجة المركزية (CPU) في الاعتبار سوى الوقت الذي تستخدم فيه سلسلة التعليمات وقت وحدة المعالجة المركزية (CPU) بشكل نشط، ويوفِّر الوقت الفعلي معلومات عن التوقيت المطلق من اللحظة التي يدخل فيها التطبيق طريقة إلى وقت الخروج من هذه الطريقة، بصرف النظر عما إذا كانت سلسلة التعليمات نشطة أو في وضع السكون.
بالنسبة إلى كل عقدة من المستوى الأعلى في لوحة الملف الشخصي، يعرض عمود Calls + Rec, Call/Total في الجدول (غير معروض في الشكل 2) عدد المكالمات الواردة إلى الطريقة وعدد المكالمات المتكررة. أو بالنسبة إلى الطرق الرئيسية والفرعية، يعرض هذا العمود عدد الطلبات التي كانت فيها الطريقة تابعة أو أصل الطريقة في عقدة المستوى الأعلى.
المشاكل المعروفة في Traceview
لا يعالج تسجيل Traceview سلاسل المحادثات بشكل جيد، ما يؤدي إلى حدوث المشاكل التالية:
- في حال خروج سلسلة محادثات أثناء إنشاء المواصفات، لن يتم إصدار اسم سلسلة المحادثات (يتم إصلاحه في الإصدار 5.1 من نظام التشغيل Android والإصدارات الأحدث)
- ويعيد الجهاز الافتراضي استخدام أرقام تعريف سلاسل المحادثات. إذا توقّفت سلسلة محادثات وبدأت سلسلة محادثات أخرى، قد يحمل المستخدمان المعرّف نفسه.