วิเคราะห์ร่องรอย

เมื่อคุณโหลดการติดตามแล้ว ให้คลิกดูการติดตาม เพื่อแสดงภาพการติดตามที่อัปโหลด แท็บสำหรับการติดตามแต่ละรายการจะปรากฏในแผงด้านบนของหน้าต่าง หากไฟล์ที่อัปโหลดมีการติดตามที่เกี่ยวข้อง Winscope จะวางซ้อนมุมมองแบบลอยของการติดตามการบันทึกหน้าจอหรือภาพหน้าจอบนหน้าจอ ดังนี้

ดูการติดตามใน Winscope

รูปที่ 1 ดูการติดตามใน Winscope

ส่วนต่อไปนี้จะอธิบายองค์ประกอบอินเทอร์เฟซผู้ใช้ (UI) ในหน้าจอดูการติดตาม

มุมมอง 3 มิติ

แผงมุมมอง 3 มิติสำหรับมุมมอง Winscope เช่น WindowManager, SurfaceFlinger และ ViewCapture จะแสดงองค์ประกอบสี่เหลี่ยมผืนผ้าจากการติดตาม ซึ่งแสดงตำแหน่งและลำดับแกน Z เป็นภาพ

ใช้การควบคุมการนำทางในแผงเพื่อแก้ไขโหมดการวาดภาพสำหรับเลเยอร์สี่เหลี่ยมผืนผ้า รวมถึงระยะห่างและการหมุน ดังนี้

การควบคุมมุมมอง 3 มิติ

รูปที่ 2 การควบคุมมุมมอง 3 มิติ

รูปแบบการไล่ระดับสี

หากต้องการตรวจสอบองค์ประกอบทั้งหมดในลำดับชั้นอย่างมีประสิทธิภาพมากขึ้น ให้คลิกปุ่มรูปแบบสี่เหลี่ยมผืนผ้า เพื่อเปลี่ยนรูปแบบการวาดภาพสี่เหลี่ยมผืนผ้าเป็น การไล่ระดับสี ในรูปแบบ การไล่ระดับสี ปุ่มรูปแบบสี่เหลี่ยมผืนผ้า จะเปลี่ยนเป็นสีเทาอ่อน

ในโหมดนี้ Winscope จะลดความทึบแสงของสี่เหลี่ยมผืนผ้าแต่ละรูปตามลำดับแกน Z โดยสี่เหลี่ยมผืนผ้าที่มีลำดับแกน Z สูงกว่าจะโปร่งแสงมากขึ้น ซึ่งจะช่วยให้คุณเห็นองค์ประกอบทั้งหมดในลำดับชั้นโดยไม่ต้องกังวลว่าสี่เหลี่ยมผืนผ้าจะบังกัน ดังนี้

การไล่ระดับสีสี่เหลี่ยมผืนผ้า

รูปที่ 3 การไล่ระดับสีของสี่เหลี่ยมผืนผ้า

รูปแบบความทึบแสง

หากต้องการเปลี่ยนรูปแบบการวาดภาพสี่เหลี่ยมผืนผ้าเป็น ความทึบแสง ให้คลิกปุ่มรูปแบบสี่เหลี่ยมผืนผ้า ในรูปแบบ ความทึบแสง ปุ่มรูปแบบสี่เหลี่ยมผืนผ้า จะเปลี่ยนเป็นสีเทาเข้ม

ในโหมดนี้ Winscope จะวาดสี่เหลี่ยมผืนผ้าแต่ละรูปตามความทึบแสง เช่น ความทึบแสงของพื้นผิวหรือมุมมอง ดังนี้

ความทึบแสงของสี่เหลี่ยมผืนผ้า

รูปที่ 4 ความทึบแสงของสี่เหลี่ยมผืนผ้า

รูปแบบ Wireframe

หากต้องการเปลี่ยนการแสดงสี่เหลี่ยมผืนผ้าเป็น Wireframe ให้คลิก ปุ่มรูปแบบสี่เหลี่ยมผืนผ้า การแสดงนี้ช่วยให้การตรวจสอบและวิเคราะห์องค์ประกอบแต่ละรายการภายในลำดับชั้นง่ายขึ้น ในรูปแบบ Wireframe ปุ่มรูปแบบสี่เหลี่ยมผืนผ้า จะเปลี่ยนเป็นเส้นขอบที่ไม่มีการแรเงา ดังนี้

โครงร่างสี่เหลี่ยมผืนผ้า

รูปที่ 5 Wireframe ของสี่เหลี่ยมผืนผ้า

การหมุน

ใช้แถบเลื่อนการหมุน เพื่อเปลี่ยนมุมมองของสี่เหลี่ยมผืนผ้าให้อยู่ระหว่าง 0 ถึง 45 องศา ซึ่งจะช่วยให้คุณเห็นสถานการณ์ที่องค์ประกอบหลุดออกจากหน้าจอ ดังนี้

การหมุนสี่เหลี่ยมผืนผ้า

รูปที่ 6 การหมุนสี่เหลี่ยมผืนผ้า

การเว้นวรรค

ใช้แถบเลื่อนการเว้นวรรค เพื่อควบคุมระยะห่างระหว่างเลเยอร์ ซึ่งจะสร้างมุมมองแบบแบนหรือแบบกระจายมากขึ้นเพื่อให้ตรวจสอบลำดับแกน Z ขององค์ประกอบได้ดียิ่งขึ้น ดังนี้

การเว้นระยะห่างของสี่เหลี่ยมผืนผ้า

รูปที่ 7 การเว้นวรรคของสี่เหลี่ยมผืนผ้า

การแสดงผลและการเลือกหน้าต่าง

ในมุมมอง SurfaceFlinger และ WindowManager เมื่อคุณบันทึกข้อมูลในอุปกรณ์ที่มีจอแสดงผลหลายจอ เมนูจะแสดงจอแสดงผลที่ใช้ได้ ซึ่งช่วยให้คุณเลือกเฉพาะจอแสดงผลที่สนใจได้

ใน ViewCapture เมื่อบันทึกหน้าต่างระบบหลายหน้าต่าง เช่น แถบการแจ้งเตือน แถบงาน และ Launcher เมนูจะแสดงหน้าต่างที่ใช้ได้

เลื่อนและซูม

คุณสามารถปรับตำแหน่งของสี่เหลี่ยมผืนผ้าในแนวนอนหรือแนวตั้งได้โดยคลิกพื้นที่ของสี่เหลี่ยมผืนผ้าแล้วลากเมาส์ หากต้องการซูมเข้า ซูมออก หรือรีเซ็ตระดับการซูม ให้ใช้ปุ่มลูกกลิ้งหรือปุ่มซูมในแถบควบคุม

ลำดับชั้น

โปรแกรมดู Winscope มักจะมีโปรแกรมดูลำดับชั้น โปรแกรมดูในรูปที่ 1 แสดงลำดับชั้นต่างๆ ตามการติดตามที่คุณกำลังวิเคราะห์ เช่น โปรแกรมดูสามารถแสดงลำดับชั้นของหน้าต่างภายใน WindowManager หรือลำดับชั้นของมุมมองภายในหน้าต่าง UI ของระบบ

ดูข้อมูลเกี่ยวกับลำดับชั้นประเภทต่างๆ ได้ในส่วนเกี่ยวกับการติดตามที่เกี่ยวข้อง

ส่วนนี้จะอธิบายการใช้งานลำดับชั้นทั่วไป เช่น ฟีเจอร์ แสดงความแตกต่าง แสดงเฉพาะที่มองเห็นได้ คงที่ และ ค้นหา

การควบคุมลำดับชั้น

รูปที่ 8 การควบคุมลำดับชั้น

แสดงความแตกต่าง

เมื่อเปิดใช้ฟีเจอร์แสดงความแตกต่าง Winscope จะตรวจสอบและแสดงการเปลี่ยนแปลงระหว่างสถานะปัจจุบันและสถานะก่อนหน้าโดยอัตโนมัติ ฟีเจอร์แสดงความแตกต่าง จะไฮไลต์องค์ประกอบที่นำออกเป็นสีแดง องค์ประกอบที่แก้ไขเป็นสีน้ำเงิน และองค์ประกอบใหม่เป็นสีเขียว การแสดงภาพนี้ช่วยให้คุณระบุและทำความเข้าใจความแตกต่างระหว่าง 2 สถานะได้อย่างรวดเร็ว ซึ่งจะช่วยให้ติดตามการเปลี่ยนแปลงและระบุปัญหาที่อาจเกิดขึ้นได้ง่ายขึ้น

แสดงลำดับชั้นความแตกต่าง

รูปที่ 9 ลำดับชั้นแสดงความแตกต่าง

ค้นหาและกรอง

โปรแกรมดูลำดับชั้นมีฟีเจอร์ค้นหา ที่ใช้นิพจน์ทั่วไป (Regex) ตัวกรองนี้กำหนดเป้าหมายทั้งชื่อและค่าขององค์ประกอบ (สำหรับพร็อพเพอร์ตี้) เมื่อตัวกรองตรงกับองค์ประกอบย่อยในลำดับชั้น เชนทั้งหมดขององค์ประกอบระดับบนสุดจนถึงรูทของแผนผังจะปรากฏขึ้น ดังที่แสดงในรูปต่อไปนี้

ลำดับชั้นการค้นหา

รูปที่ 10 ลำดับชั้นการค้นหา

แสดงเฉพาะที่มองเห็นได้

ใช้ฟีเจอร์แสดงเฉพาะที่มองเห็นได้ เพื่อกรององค์ประกอบที่ซ่อนทั้งหมดภายในลำดับชั้น โดยค่าเริ่มต้น Winscope จะแสดงทั้งองค์ประกอบที่มองเห็นได้และมองไม่เห็น Winscope จะวาดองค์ประกอบที่มองเห็นได้เป็น สีดำ ส่วนองค์ประกอบที่มองไม่เห็นจะปรากฏเป็น สีเทา

คงที่

ปุ่มคงที่ จะจัดโครงสร้างลำดับชั้นใหม่โดยนำความสัมพันธ์หลัก-ย่อยระหว่างองค์ประกอบออก การดำเนินการนี้จะแสดงองค์ประกอบทั้งหมดในระดับเดียวกัน เมื่อรวมกับตัวเลือกแสดงเฉพาะที่มองเห็นได้ ลำดับชั้นที่ได้จะแสดงเฉพาะองค์ประกอบที่มองเห็นได้ โดยไม่รวมองค์ประกอบระดับบนสุด ดังที่แสดงในรูปต่อไปนี้

ลำดับชั้นแบบราบ

รูปที่ 11 ลำดับชั้นคงที่

พร็อพเพอร์ตี้

ภายใน Winscope โปรแกรมดูหลายรายการจะผสานรวมโปรแกรมดูพร็อพเพอร์ตี้ โปรแกรมดูนี้จะแสดงรายการพร็อพเพอร์ตี้ต่างๆ ที่เชื่อมโยงกับองค์ประกอบที่เลือกจากมุมมองลำดับชั้น เช่น โปรแกรมดูสามารถแสดงพร็อพเพอร์ตี้ของกิจกรรมภายใน WindowManager หรือพร็อพเพอร์ตี้ของมุมมองใน UI ของระบบ

ดูข้อมูลเกี่ยวกับพร็อพเพอร์ตี้ที่เฉพาะเจาะจงได้ในส่วนเกี่ยวกับ SurfaceFlinger, WindowManager และ View Capture

ส่วนนี้จะอธิบายลำดับชั้นทั่วไปในฟีเจอร์ แสดงความแตกต่าง ค้นหา และ แสดงค่าเริ่มต้น

แสดงความแตกต่าง

การใช้ฟีเจอร์แสดงความแตกต่าง จะเหมือนกับการแสดงความแตกต่างในมุมมองลำดับชั้น view

ค้นหาและกรอง

การใช้ฟีเจอร์ค้นหา จะเหมือนกับ การค้นหาในมุมมองลำดับชั้น

แสดงค่าเริ่มต้น

โดยค่าเริ่มต้น Winscope จะแสดงเฉพาะค่าพร็อพเพอร์ตี้ที่แก้ไข ซึ่งเป็นค่าที่ไม่ใช่ค่าเริ่มต้นสำหรับประเภทข้อมูลที่เกี่ยวข้อง เช่น Winscope จะละเว้น false สำหรับบูลีน, 0 สำหรับจำนวนเต็ม, null สำหรับออบเจ็กต์ และ [] สำหรับอาร์เรย์ การปรับปรุงนี้จะทำให้รายการพร็อพเพอร์ตี้ที่ผู้ใช้มองเห็นได้ง่ายขึ้น อย่างไรก็ตาม การมีมุมมองที่ครอบคลุมของข้อมูลทั้งหมดที่เกี่ยวข้องกับองค์ประกอบจะเป็นประโยชน์ในบางสถานการณ์ ในกรณีดังกล่าว ตัวเลือกแสดงค่าเริ่มต้น จะแสดงพร็อพเพอร์ตี้ทั้งหมดที่ใช้ได้ใน Winscope รวมถึงพร็อพเพอร์ตี้ที่มีค่าว่างหรือค่า Null

ค่าเริ่มต้นของพร็อพเพอร์ตี้

รูปที่ 12 ค่าเริ่มต้นของพร็อพเพอร์ตี้

แป้นพิมพ์ลัดทั่วไป

Winscope รองรับแป้นพิมพ์ลัดต่อไปนี้

ทางลัด

รูปที่ 13 แป้นพิมพ์ลัดทั่วไป