تقدّم ملفات تفريغ بيانات SurfaceFlinger لقطة من SurfaceFlinger في وقت معيّن. تتضمّن عمليات تتبُّع SurfaceFlinger تسلسلاً زمنيًا للحالات التي تقدّم إحصاءات قيّمة حول كيفية ظهور نافذة على الشاشة وتحدّد النافذة التي تتلقّى استجابات اللمس في مواقع معيّنة. تساعدك هذه المعلومات في تحديد المشاكل وحلّها، مثل التطبيق لا يستجيب للمسي أو واجهتُ وميضًا أثناء مشاهدة فيديو.
في Winscope، يعرض عارض SurfaceFlinger هذه المعلومات لعمليات التتبُّع التي تجمعها باستخدام الوضع النشط أو التي يتم إنشاؤها من عملية تتبُّع المعاملات عند أخذ تقرير عن الخطأ (الإعداد التلقائي هو إعداد Droidfood)، بالإضافة إلى ملفات تفريغ البيانات.
لمزيد من المعلومات عن جمع عمليات التتبُّع، اطّلِع على مقالة SurfaceFlinger (الطبقات).
الشكل 1: تحليل عملية تتبُّع SurfaceFlinger
يعرض الجانب الأيمن من الشاشة عرضًا ثلاثي الأبعاد للطبقات. يأخذ عرض المستطيلات في الاعتبار حدود الطبقة وترتيبها على المحور Z وشفافيتها والمحور Z النسبي والزوايا المستديرة.
شرائح العرض الهرمي
يعرض الجزء الأوسط من علامة التبويب التسلسل الهرمي للطبقة مع شرائح لمزيد من المعلومات، مثل العلاقات بين الطبقات، على النحو التالي:
- V: تحدّد الطبقات المرئية.
- RelZParent: تحدّد الطبقات التي لها طبقة فرعية RelZ.
- RelZ: تحدّد الطبقات التي لها طبقة RelZParent ويتم رسمها بترتيب المحور Z كتسلسلها الهرمي.
- HWC: تحدّد الطبقات التي أنشأها Hardware Composer.
- GPU: تحدّد الطبقات التي أنشأتها وحدة معالجة الرسومات.
يعرض الجانب الأيسر من الشاشة قائمة بالخصائص المنسّقة، بالإضافة إلى ملف تفريغ البيانات الأولية لجميع خصائص الطبقة المتاحة. لمزيد من المعلومات عن ميزات قسم ملف تفريغ البيانات الأولية، اطّلِع على مقالة الخصائص.
الخصائص المنسّقة
لتسهيل عملية تحديد الأخطاء وحلّها، يقدّم عارض SurfaceFlinger قائمة منسّقة بالخصائص، ويعرض المعلومات الأكثر استخدامًا بتنسيق أكثر تنظيمًا:
الشكل 2: خصائص SurfaceFlinger
تتضمّن هذه القائمة الفئات التالية:
مستوى الرؤية
يحتوي هذا القسم على معلومات عن مستوى رؤية الطبقة وتفسير لسبب عدم ظهورها. ويشمل ذلك:
العلامات: تتحكّم هذه العلامات في مستوى الرؤية، مثلاً
HIDDENوOPAQUE.سبب عدم الظهور: تفسير لسبب عدم ظهور الطبقة أو السطح على الشاشة، مثلاً، إذا كانت الطبقة أو الطبقة الرئيسية مخفية أو لم يكن هناك مخزن مؤقت للرسم.
Occluded أو Partially Occluded أو Covered:
- Occluded: يتم احتساب الطبقة الحالية على أنّها مرئية، ولكن يتم رسم طبقة أخرى غير شفافة فوقها، ما يجعل الطبقة الحالية غير مرئية. الطبقة فوق طبقة Occluded غير شفافة، أي تم ضبط العلامة
OPAQUEأو لا يحتوي تنسيق البكسل على قناة ألفا أو لم يتم ضبط أي قناة ألفا على الطبقة. - Partially Occluded: تكون الطبقة الحالية مرئية جزئيًا لأنّ الطبقة غير الشفافة المرسومة فوقها لا تغطيها بالكامل. الطبقة فوق طبقة Partially Occluded غير شفافة، أي تم ضبط العلامة
OPAQUEأو لا يحتوي تنسيق البكسل على قناة ألفا أو لم يتم ضبط أي قناة ألفا على الطبقة. Covered: يتم تغطية الطبقة الحالية، بالكامل أو جزئيًا، بطبقة غير شفافة وقد تظل مرئية على الشاشة. الطبقة فوق طبقة Covered ليست غير شفافة، أي لم يتم ضبط العلامة
OPAQUEأو يحتوي تنسيق البكسل على قناة ألفا أو تم ضبط قناة ألفا على الطبقة. ومع ذلك، بالنسبة إلى عمليات تتبُّع SurfaceFlinger، تظهر الطبقة Covered على أنّها مرئية للطبقات أدناه:
الشكل 3: طبقة Covered على SurfaceFlinger
- Occluded: يتم احتساب الطبقة الحالية على أنّها مرئية، ولكن يتم رسم طبقة أخرى غير شفافة فوقها، ما يجعل الطبقة الحالية غير مرئية. الطبقة فوق طبقة Occluded غير شفافة، أي تم ضبط العلامة
علم الهندسة والمؤثرات
يوضّح هذا القسم علم الهندسة والمؤثرات المطلوبة والمحسوبة للطبقة الحالية.
يعرض قسم Requested الخصائص التي يتم ضبطها على الطبقة. في المقابل، يعرض قسم Calculated الخصائص التي يتم تطبيقها على الطبقة. يرجع هذا التمييز إلى أنّ علم الهندسة والمؤثرات يتم تمريرها إلى التسلسل الهرمي ويتم اكتسابها من العناصر الرئيسية.
في الشكل 2، تطلب الطبقة ضبط نصف قطر الزاوية على 0 بكسل. ومع ذلك، تضبط إحدى الطبقات الرئيسية نصف قطر الزاوية على 97.419 بكسل، وهي القيمة المطبّقة.
مخزن مؤقت
تعرض الخصائص التالية معلومات عمّا إذا كانت الطبقة تحتوي على مخزن مؤقت وحجمه وتحويله:
- رقم الإطار: رقم متزايد يبدأ عند إنشاء تطبيق.
- إطار الوجهة: يُستخدم لتغيير حجم المخزن المؤقت إلى الحدود التي يحدّدها إطار الوجهة.
العرض الهرمي
توضّح الخصائص التالية كيفية تحديد التسلسل الهرمي للطبقات:
- ترتيب المحور Z: في التسلسل الهرمي للطبقات، يحدّد ترتيب المحور Z ضبط الموضع نسبيًا للطبقة بالنسبة إلى العناصر الشقيقة. تكون الطبقة التي لها قيمة المحور Z تساوي 0 موضوعة فوق الطبقة الرئيسية. إذا كانت عدّة طبقات تشترك في القيمة نفسها للمحور Z، يتم وضع الطبقة التي لها رقم تعريف طبقة أعلى في الأعلى.
- الطبقة الرئيسية النسبية: تشير إلى الطبقة الرئيسية النسبية في ترتيب المحور Z. لا تكتسب الطبقة الفرعية أي خصائص من الطبقة الرئيسية النسبية باستثناء العلامة المخفية.
الإدخال
تحتوي الخصائص التالية على معلومات عن المنطقة القابلة للمس والتركيز:
- Crop touch region with item: استخدام حدود الطبقة لاقتصاص المنطقة القابلة للمس
- Replace touch region with crop: استخدام اقتصاص الطبقات الحالية كمنطقة قابلة للمس