อุปกรณ์ที่ใช้ Android 9 (API ระดับ 28) ขึ้นไปจะมีแอปที่ระดับระบบ
ชื่อว่าการติดตามระบบ แอปนี้คล้ายกับยูทิลิตีบรรทัดคำสั่ง
systrace
แต่
แอปนี้ช่วยให้คุณบันทึกการติดตามได้โดยตรงจากอุปกรณ์ทดสอบเอง โดยไม่ต้อง
เสียบอุปกรณ์และเชื่อมต่อผ่าน adb
จากนั้นคุณสามารถใช้
แอปเพื่อแชร์ผลลัพธ์จากการติดตามเหล่านี้กับทีมพัฒนาได้
อุปกรณ์ที่ใช้ Android 10 ขึ้นไปจะบันทึกการติดตามในรูปแบบ Perfetto ส่วนอุปกรณ์รุ่นก่อนหน้าจะบันทึกในรูปแบบ Systrace เราขอแนะนำให้ใช้โปรแกรมดูเทรซ Perfetto เพื่อเปิดทั้ง 2 รูปแบบ แล้ว วิเคราะห์เทรซ
ซึ่งจะช่วยบันทึกการติดตามเมื่อแก้ไขข้อบกพร่องที่เกี่ยวข้องกับประสิทธิภาพในแอป เช่น การเริ่มต้นที่ช้า การเปลี่ยนผ่านที่ช้า หรือ UI ที่กระตุก
บันทึกการติดตามระบบ
แอปการติดตามระบบช่วยให้คุณบันทึกการติดตามระบบได้โดยใช้การตั้งค่าด่วน ไทล์หรือเมนูภายในแอปเอง ส่วนต่อไปนี้จะอธิบายวิธี บันทึกให้เสร็จสมบูรณ์โดยใช้อินเทอร์เฟซเหล่านี้
บันทึกโดยใช้การ์ดการตั้งค่าด่วน
โดยปกติแล้วการ์ดการตั้งค่าด่วนจะเป็นวิธีที่สะดวกกว่าในการทำกระบวนการ การติดตามระบบในอุปกรณ์ให้เสร็จสมบูรณ์
ตั้งค่าการ์ด
หากคุณใช้การติดตามระบบเป็นครั้งแรกในอุปกรณ์ทดสอบ หรือหากไม่เห็นการ์ดการติดตามระบบในแผงการตั้งค่าด่วนของอุปกรณ์ ดังที่แสดงในรูปที่ 2 ให้ทำตามขั้นตอนการตั้งค่าต่อไปนี้
- เปิดใช้ตัวเลือกสำหรับนักพัฒนาแอป
- เปิดหน้าจอการตั้งค่าตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์
- ในส่วนการแก้ไขข้อบกพร่อง ให้เลือกการติดตามระบบ แอปการติดตามระบบ จะเปิดขึ้นและแสดงเมนูแอป
จากเมนูแอป ให้เปิดใช้แสดงการ์ดการตั้งค่าด่วน ดังที่แสดงในรูปที่ 1 ระบบจะเพิ่มการ์ดการติดตามระบบลงในแผงการตั้งค่าด่วน ดังที่แสดงในรูปที่ 2
รูปที่ 1 สวิตช์แสดงการ์ดการตั้งค่าด่วนใน แอปการติดตามระบบ รูปที่ 2 การ์ดการติดตามระบบภายในแผงการตั้งค่าด่วน หมายเหตุ: โดยค่าเริ่มต้น ระบบจะเพิ่มไทล์การติดตามระบบเป็นไทล์แรกในแผงการตั้งค่าด่วน หากต้องการให้การ์ดปรากฏในตำแหน่งอื่น ให้ใช้โหมดแก้ไขของแผงเพื่อย้ายการ์ด
บันทึกการติดตามระบบให้เสร็จสมบูรณ์
หากต้องการบันทึกการติดตามของระบบโดยใช้แผงการตั้งค่าด่วน ให้ทำตามขั้นตอนต่อไปนี้
แตะการ์ดการติดตามระบบที่มีป้ายกำกับว่าบันทึกการติดตาม ไทล์จะเปิดใช้ และการแจ้งเตือนแบบต่อเนื่องจะปรากฏขึ้นเพื่อแจ้งให้คุณทราบ ว่าระบบกำลังบันทึกการติดตาม ดังที่แสดงในรูปที่ 3
รูปที่ 3 การแจ้งเตือนแบบถาวรที่ปรากฏขึ้นหลังจาก เริ่มการติดตามระบบในอุปกรณ์ ดำเนินการในแอปที่คุณต้องการให้ระบบตรวจสอบ
หยุดการติดตามโดยแตะไทล์การติดตามระบบในแผงการตั้งค่าด่วน หรือในการแจ้งเตือนการติดตามระบบ
ระบบจะแสดงการแจ้งเตือนใหม่ที่มีข้อความ "กำลังบันทึก การติดตาม" เมื่อบันทึกเสร็จสมบูรณ์แล้ว ระบบจะปิดการแจ้งเตือนและ แสดงการแจ้งเตือนที่ 3 เพื่อยืนยันว่าระบบได้บันทึกการติดตามของคุณแล้ว และคุณพร้อมที่จะแชร์การติดตามของระบบ ดังที่แสดงในรูปที่ 4
รูปที่ 4 การแจ้งเตือนแบบต่อเนื่องที่ปรากฏขึ้นหลังจาก ระบบบันทึกการติดตามที่บันทึกไว้เสร็จสิ้น
บันทึกโดยใช้เมนูแอป
เมนูแอปช่วยให้คุณกำหนดการตั้งค่าขั้นสูงหลายอย่างที่เกี่ยวข้องกับการติดตามระบบ และมีสวิตช์สำหรับเริ่มและหยุดการติดตามระบบ
หากต้องการบันทึกการติดตามของระบบโดยใช้เมนูแอปการติดตามของระบบ ให้ทำตาม ขั้นตอนต่อไปนี้
- เปิดใช้ตัวเลือกสำหรับนักพัฒนาแอป
เปิดหน้าจอการตั้งค่าตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ ในส่วนการแก้ไขข้อบกพร่อง ให้เลือกการติดตามระบบ แอปการติดตามระบบจะเปิดขึ้น
หรือหากตั้งค่าการ์ดการติดตามระบบ คุณสามารถแตะการ์ดค้างไว้เพื่อเข้าสู่แอปการติดตามระบบได้
ตรวจสอบว่าได้เลือกติดตามแอปพลิเคชันที่แก้ไขข้อบกพร่องได้เพื่อรวมแอปที่ เปิดใช้การแก้ไขข้อบกพร่องในการติดตามระบบ
เลือกหมวดหมู่ของการเรียกใช้ระบบและเซ็นเซอร์ที่จะติดตาม (ไม่บังคับ) และเลือกขนาดบัฟเฟอร์ต่อ CPU ในหน่วย KB เลือกหมวดหมู่ที่สอดคล้อง กับกรณีการใช้งานที่คุณกำลังทดสอบ เช่น หมวดหมู่เสียงสำหรับการ ทดสอบการทำงานของบลูทูธ หรือหมวดหมู่หน่วยความจำสำหรับการจัดสรรฮีป
หรือเลือกการติดตามแบบยาวเพื่อเปิดใช้การติดตามที่บันทึก อย่างต่อเนื่องในพื้นที่เก็บข้อมูลของอุปกรณ์ สำหรับตัวเลือกนี้ ให้ตั้งค่าขีดจำกัดสำหรับขนาดการติดตามแบบยาวสูงสุดและระยะเวลาการติดตามแบบยาวสูงสุด
เปิดสวิตช์บันทึกการติดตามที่ไฮไลต์ในรูปที่ 5 ไทล์จะ เปิดใช้ และการแจ้งเตือนแบบถาวรจะปรากฏขึ้นเพื่อแจ้งให้คุณทราบว่าระบบ กำลังบันทึกการติดตาม ดังที่แสดงในรูปที่ 3
รูปที่ 5 สวิตช์บันทึกการติดตามในการตั้งค่าการติดตามของระบบ ดำเนินการในแอปที่คุณต้องการให้ระบบตรวจสอบ
หยุดการติดตามโดยปิดสวิตช์บันทึกการติดตาม
ระบบจะแสดงการแจ้งเตือนใหม่ที่มีข้อความ "กำลังบันทึก การติดตาม" เมื่อบันทึกเสร็จสมบูรณ์ ระบบจะปิดการแจ้งเตือนและ แสดงการแจ้งเตือนที่ 3 เพื่อยืนยันว่าระบบได้บันทึกการติดตามของคุณแล้ว และคุณพร้อมที่จะแชร์การติดตามของระบบ ดังที่แสดงใน รูปที่ 4
แชร์การติดตามของระบบ
แอปการติดตามระบบช่วยให้คุณแชร์ผลการติดตามระบบเป็นส่วนหนึ่งของเวิร์กโฟลว์ต่างๆ
ได้ ในอุปกรณ์ที่ใช้ Android 10 (API ระดับ 29) ขึ้นไป ระบบจะบันทึกไฟล์ trace
โดยมีนามสกุลเป็น .perfetto-trace
และเปิดได้
ใน UI ของ Perfetto ในอุปกรณ์ที่ใช้ Android เวอร์ชันก่อนหน้า ระบบจะบันทึกไฟล์การติดตามด้วยนามสกุลชื่อไฟล์ .ctrace
ซึ่งระบุรูปแบบ Systrace
แชร์เป็นข้อความ
การติดตามระบบช่วยให้คุณแชร์การติดตามที่รวบรวมไว้กับแอปอื่นๆ ในอุปกรณ์ได้ คุณสามารถส่งการติดตามไปยังทีมพัฒนาผ่านอีเมลหรือแอปติดตามข้อบกพร่องโดยไม่ต้องเชื่อมต่ออุปกรณ์กับเครื่องมือพัฒนา
หลังจากบันทึกการติดตามระบบแล้ว ให้แตะการแจ้งเตือนที่ปรากฏบน อุปกรณ์ เช่น การแจ้งเตือนที่แสดงในรูปที่ 4 ตัวเลือก Intent ของแพลตฟอร์มจะปรากฏขึ้น ซึ่งช่วยให้คุณแชร์การติดตามโดยใช้แอปรับส่งข้อความที่คุณเลือกได้
แชร์จากแอป Files
ในอุปกรณ์ที่ใช้ Android 10 (API ระดับ 29) ขึ้นไป ระบบจะแสดงการติดตามในแอป Files คุณแชร์การติดตามจากแอปนี้ได้
ดาวน์โหลดรายงานโดยใช้ ADB
นอกจากนี้ คุณยังแยกการติดตามระบบจากอุปกรณ์ได้โดยใช้ adb
เชื่อมต่ออุปกรณ์ที่ใช้บันทึกการติดตามกับเครื่องพัฒนาซอฟต์แวร์ จากนั้นเรียกใช้คำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัล
cd /path-to-traces-on-my-dev-machine && \ adb pull /data/local/traces/ .
แปลงระหว่างรูปแบบการติดตาม
คุณสามารถแปลงไฟล์การติดตาม Perfetto เป็นรูปแบบ Systrace ได้ ดูข้อมูลเพิ่มเติมได้ที่การแปลง ระหว่างรูปแบบการติดตาม
สร้างรายงาน HTML
เมื่อแชร์การติดตาม รายงานจะอยู่ในไฟล์ .perfetto-trace
ในอุปกรณ์ที่ใช้ Android 10 ขึ้นไป หรือไฟล์ .ctrace
สำหรับเวอร์ชันอื่นๆ ทั้งหมด
สร้างรายงาน HTML จากไฟล์การติดตามโดยใช้ UI บนเว็บหรือจากบรรทัดคำสั่ง
UI บนเว็บ
ใช้ UI ของ Perfetto เพื่อเปิด ไฟล์การติดตามและสร้างรายงาน
สำหรับไฟล์ Perfetto ให้คลิกเปิดไฟล์การติดตาม สำหรับไฟล์ Systrace ให้คลิกเปิดด้วย UI เดิม UI เดิมมีลักษณะเหมือนกับรายงาน Systrace
บรรทัดคำสั่ง
เรียกใช้คำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลเพื่อสร้างรายงาน HTML จากไฟล์การติดตาม
cd /path-to-traces-on-my-dev-machine && \ systrace --from-file trace-file-name{.ctrace | .perfetto-trace}
หากยังไม่มีsystrace
โปรแกรมบรรทัดคำสั่ง คุณสามารถดาวน์โหลดได้จากโปรเจ็กต์ Catapult ใน GitHub หรือจาก Android Open Source
Project โดยตรง
แนะนำสำหรับคุณ
- หมายเหตุ: ข้อความลิงก์จะแสดงเมื่อ JavaScript ปิดอยู่
- การเปรียบเทียบในการผสานรวมอย่างต่อเนื่อง
- บันทึกการติดตามระบบในบรรทัดคำสั่ง