ดูข้อมูลประสิทธิภาพการแสดงผลหน้าจอ (แอป Apple และ Android)


Performance Monitoring ใช้ร่องรอยเพื่อรวบรวมข้อมูลเกี่ยวกับกระบวนการที่ตรวจสอบในแอปของคุณ ร่องรอยคือรายงานที่มีข้อมูลที่บันทึกไว้ระหว่าง 2 จุดในเวลาที่แตกต่างกันในแอป

สําหรับแอป Apple และ Android Performance Monitoring จะวัดประสิทธิภาพการแสดงผลของหน้าจอต่างๆ ในแอปพลิเคชันโดยอัตโนมัติ Performance Monitoring สร้างการติดตามการแสดงผลหน้าจอสำหรับทุกหน้าจอในแอปพลิเคชัน ซึ่งจะรวบรวมและวัดเมตริกต่อไปนี้

  • เฟรมที่แสดงผลช้า - วัดเปอร์เซ็นต์ของอินสแตนซ์หน้าจอที่ใช้เวลาในการแสดงผลนานกว่า 16 มิลลิวินาที

  • เฟรมค้าง - วัดเปอร์เซ็นต์ของอินสแตนซ์หน้าจอที่ใช้เวลาในการแสดงผลนานกว่า 700 มิลลิวินาที

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

คุณสามารถดูข้อมูลการติดตามการแสดงผลของหน้าจอได้ในแท็บการแสดงผลของหน้าจอของตารางการติดตาม ตารางการติดตามจะอยู่ด้านล่างของหน้าประสิทธิภาพของคอนโซล Firebase ดูข้อมูลเพิ่มเติมได้ที่ติดตาม ดู และกรองข้อมูลประสิทธิภาพ

เมตริกที่รวบรวมโดยการติดตามการแสดงผลของหน้าจอ

การติดตามเหล่านี้เป็นการติดตามที่พร้อมใช้งานทันที คุณจึงเพิ่มเมตริกหรือแอตทริบิวต์ที่กําหนดเองไม่ได้

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

เฟรมที่แสดงผลช้า

เมตริกนี้คือเปอร์เซ็นต์ของเซสชันผู้ใช้ที่พบการแสดงผลที่ช้าอย่างเห็นได้ชัดในหน้าจอหนึ่งๆ กล่าวโดยละเอียดคือ เมตริกนี้คือเปอร์เซ็นต์ของอินสแตนซ์หน้าจอซึ่งมีเฟรมมากกว่า 50% ใช้เวลานานกว่า 16 มิลลิวินาทีเพื่อแสดงผล

เฟรมที่หยุดทำงาน

เมตริกนี้คือเปอร์เซ็นต์ของเซสชันผู้ใช้ที่พบเฟรมค้างจํานวนมากในหน้าจอหนึ่งๆ กล่าวโดยละเอียดคือ เมตริกนี้คือเปอร์เซ็นต์ของอินสแตนซ์หน้าจอซึ่งมีเฟรมมากกว่า 0.1% ใช้เวลานานกว่า 700 มิลลิวินาทีในการแสดงผล

ระบบสร้างร่องรอยการแสดงผลของหน้าจออย่างไร

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

การติดตามการแสดงผลของหน้าจอแต่ละรายการจะดําเนินการต่อไปนี้

  • เริ่มสําหรับทุกคลาสกิจกรรมและคลาสแฟรกเมนต์เมื่อวัตถุปรากฏบนหน้าจอ OnActivityStarted() สำหรับกิจกรรม และ OnFragmentResume() สำหรับข้อมูลโค้ด

  • หยุดสำหรับกิจกรรมและคลาสเศษทุกคลาสเมื่อไม่เห็นวัตถุบนหน้าจอ OnActivityStopped() สำหรับกิจกรรมและ OnFragmentPaused() สำหรับเศษ

ติดตาม ดู และกรองข้อมูลประสิทธิภาพ

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

ติดตามเมตริกหลักในหน้าแดชบอร์ด

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

รูปภาพกระดานเมตริกใน <span class=หน้าแดชบอร์ดการตรวจสอบประสิทธิภาพ Firebase" />

หากต้องการเพิ่มเมตริกลงในบอร์ดเมตริก ให้ทําตามขั้นตอนต่อไปนี้

  1. ไปที่แดชบอร์ดประสิทธิภาพในคอนโซล Firebase
  2. คลิกการ์ดเมตริกว่าง แล้วเลือกเมตริกที่มีอยู่เพื่อเพิ่มลงในบอร์ด
  3. คลิก ในการ์ดเมตริกที่สร้างขึ้นเพื่อดูตัวเลือกเพิ่มเติม เช่น แทนที่หรือนําเมตริกออก

บอร์ดเมตริกจะแสดงข้อมูลเมตริกที่รวบรวมเมื่อเวลาผ่านไป ทั้งในรูปแบบกราฟิกและการเปลี่ยนแปลงเป็นเปอร์เซ็นต์ตัวเลข

ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้แดชบอร์ด

ดูประสิทธิภาพของหน้าจอในคอนโซล

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

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

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

คุณเข้าถึงหน้าการแก้ปัญหาได้ดังนี้

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

เมื่อคลิกชื่อการติดตามในตารางการติดตาม คุณจะเจาะลึกเมตริกที่สนใจได้ คลิกปุ่มกรอง เพื่อกรองข้อมูลตามแอตทริบิวต์ เช่น

รูปภาพ <span class=ข้อมูลการตรวจสอบประสิทธิภาพ Firebase ที่กรองตามแอตทริบิวต์" />
  • กรองตามเวอร์ชันแอปเพื่อดูข้อมูลเกี่ยวกับรุ่นที่ผ่านมาหรือรุ่นล่าสุด
  • กรองตามอุปกรณ์เพื่อดูวิธีที่อุปกรณ์รุ่นเก่าจัดการแอปของคุณ
  • กรองตามประเทศเพื่อให้แน่ใจว่าตำแหน่งฐานข้อมูลไม่ได้ส่งผลกระทบต่อภูมิภาคที่เฉพาะเจาะจง

ดูข้อมูลเพิ่มเติมเกี่ยวกับการดูข้อมูลร่องรอย

แอตทริบิวต์ของข้อมูลโค้ด

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

รูปภาพเมตริกของข้อมูลโค้ด <span class=หน้าแดชบอร์ดการตรวจสอบประสิทธิภาพ" />
  • Hosting_activity — กิจกรรมที่โฮสต์ข้อมูลโค้ด ช่วยให้คุณเข้าใจประสิทธิภาพของข้อมูลโค้ดภายในกิจกรรมการโฮสต์
  • Parent_fragment — ข้อมูลโค้ดหลักของข้อมูลโค้ดที่คุณกำลังตรวจสอบ ช่วยให้คุณเข้าใจประสิทธิภาพของข้อมูลโค้ดภายในข้อมูลโค้ดหลัก หากไม่มีข้อมูลโค้ดต้นทางหลัก ระบบจะตั้งค่าแอตทริบิวต์เป็นไม่มีข้อมูลโค้ดต้นทางหลัก

ขั้นตอนถัดไป