تسجيل عمليات التتبّع باستخدام Winscope

يمكنك تشغيل Winscope محليًا أو الوصول إليه من خادم ويب.

يمكنك التقاط إشارات التتبّع باستخدام Winscope لأغراض التطوير وتصحيح الأخطاء محليًا. يستخدم Winscope أداة adb التي تتيح الاتصال بالجهاز عبر USB أو Wi-Fi.

عند تشغيل Winscope، تظهر شاشة جمع إشارات التتبّع.

الاتصال بالجهاز

يمكنك ربط الأجهزة في Winscope باستخدام Winscope Proxy أو Web Device Proxy. تعرض صفحة Winscope الرئيسية تلقائيًا واجهة مستخدِم إعداد الاتصال Winscope Proxy.

لبدء التقاط إشارات التتبّع، اختَر إحدى آليات الاتصال بالجهاز التالية.

إعداد Winscope Proxy

اتّبِع الخطوات التالية لإعداد Winscope Proxy:

  1. في قسم جمع إشارات التتبّع على الصفحة الرئيسية، اختَر Winscope Proxy من قائمة اختيار نوع الاتصال:

    تسجيل عمليات التتبُّع باستخدام Winscope Proxy

    الشكل 1: التقاط إشارات التتبّع باستخدام Winscope Proxy

  2. شغِّل الخادم الوكيل Winscope ADB Connect لالتقاط إشارات التتبّع مباشرةً من متصفّحك عن طريق تنفيذ الأمر التالي:

    python3 $ANDROID_BUILD_TOP/development/tools/winscope/src/adb/winscope_proxy.py
    
  3. دوِّن رمز الخادم الوكيل Winscope المعروض على الجهاز بعد التنفيذ.

  4. بعد تشغيل الخادم الوكيل Winscope ADB Connect، تتغيّر الشاشة على النحو التالي. لإنشاء الاتصال الأوّلي بالخادم الوكيل، أدخِل رمز الخادم الوكيل Winscope من الخطوة 3 وانقر على ربط.

    الاتصال بخادم Winscope الوكيل

    الشكل 2: الاتصال بـ Winscope Proxy

إعداد Web Device Proxy

اتّبِع الخطوات التالية لإعداد Web Device Proxy:

  1. في قسم جمع إشارات التتبّع على الصفحة الرئيسية، اختَر Web Device Proxy من قائمة اختيار نوع الاتصال:

    تسجيل عمليات التتبُّع باستخدام Web Device Proxy

    الشكل 3: التقاط إشارات التتبّع باستخدام Web Device Proxy

  2. إذا لم يكن لديك برنامج خفي Web Device Proxy على جهازك، انقر على تثبيت أو شغِّل أداة التثبيت.

  3. وافق على وصول نقطة الانطلاق إلى Web Device Proxy من خلال مربّع الحوار.

    تفويض الوصول إلى WDP من المصدر

    الشكل 4: تفويض نقطة الانطلاق

  4. وافق على الوصول لكل جهاز جديد في أول مرة تتصل فيها بالجهاز. إذا لم يظهر مربّع الحوار تلقائيًا، انقر على رمز lock_open بجانب الجهاز:

    wdp_unauth_device

    الشكل 5: تفويض الجهاز

إشارات

اتّبِع الخطوات التالية لجمع إشارات التتبّع:

  1. عند الاتصال، ابدأ عملية الالتقاط عن طريق اختيار الأهداف وضبط الإعدادات. بعد ذلك، انقر على بدء التتبّع لبدء الالتقاط:

    جمع عمليات التتبُّع في Winscope

    الشكل 6: جمع إشارات التتبّع في Winscope

  2. لإيقاف الالتقاط، انقر على إنهاء التتبّع:

    إنهاء عملية التتبُّع في Winscope

    الشكل 7: إنهاء التتبّع في Winscope

خيارات التتبّع

يصف هذا القسم خيارات كل نوع من أنواع إشارات التتبّع.

تسجيل الشاشة

باستخدام Winscope، يمكنك تسجيل شاشة أجهزة عرض متعددة. اختَر شاشة عرض من القائمة لتسجيل الشاشة. إذا لم تختَر شاشة عرض، يسجِّل Winscope شاشة العرض النشطة تلقائيًا.

SurfaceFlinger

  • حجم ذاكرة التخزين المؤقت: يضبط حجم المخزن المؤقت الحلقي في الذاكرة لإشارة تتبّع SurfaceFlinger. يسمح المخزن المؤقت الأكبر بجمع المزيد من البيانات، ولكنّه يزيد من استخدام الذاكرة.

  • الإدخال: إذا كان السطح يحتوي على بيانات الإدخال، يتتبّع هذا الخيار تفاصيل نافذة الإدخال.

  • التركيب: يتتبّع هذا الخيار نوع التركيب والمنطقة المرئية.

  • البيانات الوصفية: يتتبّع هذا الخيار بيانات وصفية إضافية للسطح، بما في ذلك الطبقات غير المعروضة على الشاشة.

  • HWC: يتتبّع هذا الخيار بيانات وصفية إضافية غير منظَّمة لبرنامج تركيب الأجهزة.

  • تتبّع المخازن المؤقتة: يضبط هذا الخيار SurfaceFlinger لتتبّع جميع تغييرات المخزن المؤقت على السطح. تتتبّع SurfaceFlinger تلقائيًا حالة جديدة فقط عند تغيير الشكل الهندسي.

  • شاشات العرض الافتراضية: يتضمّن هذا الخيار طبقات شاشة العرض الافتراضية في إشارة التتبّع.

WindowManager

  • حجم ذاكرة التخزين المؤقت: يضبط حجم المخزن المؤقت الحلقي في الذاكرة لإشارة تتبّع WindowManager. يسمح المخزن المؤقت الأكبر بجمع المزيد من البيانات، ولكنّه يزيد من استخدام الذاكرة.
  • نوع التتبّع: يحدّد خيارات معدّل تكرار جمع الحالات:

    • الإطار: في هذا الوضع، ينقل WindowManager حالة واحدة لكل إطار، ما يضمن التقاط حالات WindowManager الصالحة فقط. ويكون لهذا الوضع أقل تأثير على الأداء.
    • المعاملة: يسجِّل هذا الوضع حالة WindowManager كلما تم تنفيذ معاملة. يمكنك تنفيذ معاملات متعددة ضمن إطار، لذا يتيح ذلك تصحيح أخطاء حالات WindowManager الوسيطة أثناء الإطار. ومع ذلك، يكون لهذا الوضع تأثير أكبر على الأداء مقارنةً بوضع الإطار.
  • مستوى التتبّع: يحدّد مستوى الإسهاب لإشارات تتبّع WindowManager:

    • مفصّل: يتضمّن هذا الخيار جميع النوافذ ومعلومات الإعداد لكل نافذة. ويكون لهذا الوضع أكبر تأثير على الذاكرة والأداء.
    • تصحيح الأخطاء: يتضمّن هذا الخيار معلومات عن جميع النوافذ، ولكنّه يسجِّل إعداد النافذة فقط إذا كان يحتوي على إعدادات بديلة مطلوبة.
    • مهم: يتضمّن هذا الخيار المعلومات نفسها المتوفّرة في وضع "تصحيح الأخطاء"، ولكنّه يتضمّن النوافذ المرئية فقط. ويكون لهذا الوضع أقل تأثير على الذاكرة والأداء.

عمليات النسخ

لإجراء نسخ للحالة باستخدام Winscope، ضمن جمع إشارات التتبّع على الصفحة الرئيسية انقر على علامة التبويب نسخ، ثم انقر على نسخ الحالة:

نسخ الحالة في Winscope

الشكل 8: نسخ الحالة في Winscope

إعداد لقطة الشاشة

يسمح Winscope بأخذ لقطة شاشة لأجهزة عرض متعددة. اختَر شاشة عرض من القائمة لأخذ لقطة شاشة. إذا لم يتم إجراء أي اختيار، يتم جمع لقطة شاشة لشاشة العرض النشطة.