แอปมีประสิทธิภาพไม่ดีหากตอบสนองช้า แสดงภาพเคลื่อนไหวที่กระตุก ค้าง หรือใช้พลังงานมากเกินไป การแก้ไขปัญหาด้านประสิทธิภาพเกี่ยวข้องกับการจัดทำโปรไฟล์แอป หรือระบุส่วนที่แอปใช้ทรัพยากรอย่างไม่มีประสิทธิภาพ เช่น CPU, หน่วยความจำ, กราฟิก หรือแบตเตอรี่ของอุปกรณ์ หัวข้อนี้อธิบายเครื่องมือและเทคนิคของ Android Studio ที่ใช้เพื่อแก้ปัญหาด้านประสิทธิภาพที่พบบ่อย
ดูวิธีเรียกใช้เครื่องมือวิเคราะห์ประสิทธิภาพแบบสแตนด์อโลนโดยไม่ต้องเรียกใช้ Android Studio IDE ทั้งหมด (Windows หรือ Linux เท่านั้น) ได้ที่หัวข้อเรียกใช้เครื่องมือวิเคราะห์ประสิทธิภาพแบบสแตนด์อโลน
ข้อกำหนด
เราขอแนะนำให้คุณมีสิ่งต่อไปนี้เพื่อโปรไฟล์แอป
แอปที่มีตัวแปรบิลด์ที่เผยแพร่ซึ่งเปิดใช้การกำหนดค่าไฟล์ Manifest
profileable
หรือที่เรียกว่าแอปที่สร้างโปรไฟล์ได้ โดยค่าเริ่มต้น แอปจะมีการกำหนดค่านี้เป็นจริง หากต้องการตรวจสอบหรือเปลี่ยนแปลงการกำหนดค่านี้ ให้เปิดไฟล์ Manifest หรือAndroidManifest.xml
ของแอป แล้วมองหาการกำหนดค่าไฟล์ Manifestprofileable
ในส่วน<application>
<profileable android:shell="true" />
อุปกรณ์ทดสอบเสมือนจริงหรือจริงที่ใช้ API ระดับ 29 ขึ้นไปและมี Google Play
ปลั๊กอิน Android Gradle 7.3 ขึ้นไป
แอปที่โปรไฟล์ได้กับแอปที่แก้ไขข้อบกพร่องได้
แอปที่ทำโปรไฟล์ได้ให้คุณทำงานส่วนใหญ่ในการทำโปรไฟล์ได้ แต่คุณควรใช้แอปที่แก้ไขข้อบกพร่องได้แทนหากต้องการบันทึกการจัดสรร Java/Kotlin หรือบันทึกฮีปดัมป์ กระบวนการของแอปที่แก้ไขข้อบกพร่องได้และอุปกรณ์ที่ใช้ API ระดับ 26 ขึ้นไปยังช่วยให้คุณเห็นไทม์ไลน์การโต้ตอบ ซึ่งแสดงการโต้ตอบของผู้ใช้และเหตุการณ์ในวงจรชีวิตของแอปในมุมมองงานที่มีข้อมูลดังกล่าว
แอปที่แก้ไขข้อบกพร่องได้จะอิงตามdebug
ตัวแปรบิลด์ของแอป และให้คุณใช้เครื่องมือการพัฒนา เช่น โปรแกรมแก้ไขข้อบกพร่องได้ แต่อาจส่งผลเสียต่อประสิทธิภาพบ้าง แอปที่โปรไฟล์ได้จะอิงตามตัวแปร release
ของตัวแอป และเปิดใช้งานโปรไฟล์ทั่วไปชุดย่อยโดยไม่เพิ่มภาระด้านประสิทธิภาพของตัวแอปที่ใช้แก้ไขข้อบกพร่อง
สร้างและเรียกใช้แอปที่โปรไฟล์ได้
หากต้องการสร้างและเรียกใช้แอปที่โปรไฟล์ได้ใน Android Studio ให้ทําตามขั้นตอนต่อไปนี้
- สร้างการกําหนดค่าการเรียกใช้/การแก้ไขข้อบกพร่อง หากยังไม่มี
- เลือกตัวแปรรุ่นของบิลด์ (สร้าง > เลือกตัวแปรของบิลด์)
- คลิกการดำเนินการเพิ่มเติม > โปรไฟล์ "app" ที่มีค่าใช้จ่ายเพิ่มเติมต่ำ หรือโปรไฟล์ "app" ที่มีข้อมูลครบถ้วน ("app" คือชื่อของการกำหนดค่าการเรียกใช้ จึงอาจแตกต่างไปสำหรับคุณ) หากต้องการเลือกระหว่าง 2 ตัวเลือกนี้ โปรดดูข้อกำหนด แอปจะเปิดในอุปกรณ์ทดสอบและแผงเครื่องมือวิเคราะห์จะเปิดขึ้นใน Android Studio
หากวิธีการเหล่านี้ไม่ได้ผล โปรดดูสร้างและเรียกใช้แอปที่โปรไฟล์ได้ด้วยตัวเอง
เริ่มสร้างโปรไฟล์
หากต้องการเริ่มงานโปรไฟล์ ให้ทำตามขั้นตอนต่อไปนี้
เลือกกระบวนการจากรายการในแท็บหน้าแรกภายในแผงเครื่องมือสร้างโปรไฟล์ ในกรณีส่วนใหญ่ คุณควรเลือกกระบวนการหลักที่แสดงถึงแอป
เลือกงานโปรไฟล์จากส่วนงาน หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับ งาน โปรดดูหน้าอื่นๆ ในส่วนนี้ งานโปรไฟล์บางอย่างอาจใช้ไม่ได้กับบางกระบวนการ หากไม่รู้ว่าจะเริ่มจากตรงไหน ให้ดูภาพรวม ของกิจกรรมประสิทธิภาพโดย การตรวจสอบแอปที่เผยแพร่อยู่
ใช้เมนูแบบเลื่อนลงเริ่มงานโปรแกรมวิเคราะห์จากเพื่อเลือกว่าจะเริ่มงานโปรแกรมวิเคราะห์ตั้งแต่เริ่มต้นหรือจะแนบไปกับกระบวนการขณะทำงาน หากคุณพยายามปรับปรุงเวลาเริ่มต้นของแอปหรือบันทึกกระบวนการที่เกิดขึ้นในช่วงเริ่มต้นแอป คุณควรระบุสตาร์ทอัพด้วย ไม่เช่นนั้นก็เริ่มทำโปรไฟล์ในสถานะปัจจุบันของแอปได้
คลิกเริ่มงานโปรแกรมวิเคราะห์โปรไฟล์ งานจะเริ่มในแท็บของตัวเอง
โต้ตอบกับแอปเพื่อเรียกให้กิจกรรมเริ่มต้น
หยุดการบันทึก (หากมี) รอให้ระบบแยกวิเคราะห์และดูผลลัพธ์
เปรียบเทียบ ส่งออก และนําเข้าร่องรอย
เมื่อคุณหยุดการทําโปรไฟล์ ระบบจะบันทึกการทําโปรไฟล์นั้นโดยอัตโนมัติในแท็บการบันทึกที่ผ่านมาในแผงเครื่องมือวิเคราะห์โปรไฟล์ คุณสามารถใช้ไฟล์บันทึกเสียงที่บันทึกไว้เหล่านี้เพื่อเปรียบเทียบการใช้ทรัพยากรในสถานการณ์ต่างๆ ได้ ระบบจะบันทึกไฟล์บันทึกไว้ตลอดระยะเวลาของเซสชัน Android Studio ปัจจุบัน หากต้องการเก็บไฟล์บันทึกไว้นานกว่านั้น ให้ส่งออกโดยคลิกส่งออกไฟล์บันทึก การส่งออกการติดตามบางประเภทอาจไม่สามารถทำได้
หากต้องการนําเข้าการติดตาม เช่น จากการเรียกใช้ Android Studio ก่อนหน้านี้ ให้คลิกนําเข้าไฟล์บันทึก ในแท็บไฟล์บันทึกที่ผ่านมา แล้วเลือกไฟล์การติดตาม นอกจากนี้ คุณยังนำเข้าไฟล์ได้โดยลากไฟล์นั้นลงในหน้าต่างเครื่องมือแก้ไขของ Android Studio
แก้ไขการกำหนดค่าการบันทึก
หากต้องการแก้ไขการกำหนดค่าการบันทึกงานของเครื่องมือสร้างโปรไฟล์ ให้คลิกการตั้งค่าเครื่องมือสร้างโปรไฟล์ การตั้งค่าหลักที่คุณสลับได้มีอยู่ 2 อย่าง ได้แก่
- สําหรับงานที่ต้องมีการสุ่มตัวอย่าง ช่วงเวลาระหว่างตัวอย่างจะแสดงเวลาระหว่างตัวอย่างแต่ละรายการ ยิ่งคุณระบุช่วงเวลาสั้นลงเท่าใด ไฟล์ที่บันทึกไว้ก็จะมีขนาดถึงขีดจำกัดเร็วขึ้นเท่านั้น
- ขีดจำกัดขนาดไฟล์แสดงถึงปริมาณข้อมูลที่เขียนลงในอุปกรณ์ที่เชื่อมต่อได้ เมื่อคุณหยุดบันทึก Android Studio จะแยกวิเคราะห์ข้อมูลนี้และแสดงในหน้าต่างเครื่องมือวิเคราะห์โปรไฟล์ หากคุณเพิ่มขีดจำกัดและบันทึกข้อมูลจำนวนมาก Android Studio จะใช้เวลาแยกวิเคราะห์ไฟล์นานกว่ามากและอาจไม่ตอบสนอง