Jetpack Compose มีประสิทธิภาพที่ยอดเยี่ยมตั้งแต่เริ่มต้น กำหนดค่าแอปโดยใช้แนวทางปฏิบัติแนะนำเพื่อหลีกเลี่ยงข้อผิดพลาดที่พบได้ทั่วไปและเพิ่มประสิทธิภาพแอปพลิเคชัน Compose
หัวข้อสำคัญ
แนวคิดสําคัญบางส่วนสําหรับประสิทธิภาพในเครื่องมือเขียนมีดังนี้
- ระยะ: การทําความเข้าใจระยะการจัดองค์ประกอบ เลย์เอาต์ และการวาดภาพเป็นสิ่งสําคัญในการเพิ่มประสิทธิภาพวิธีที่เครื่องมือเขียนอัปเดต UI
- โปรไฟล์พื้นฐาน: โปรไฟล์เหล่านี้จะคอมไพล์โค้ดสําคัญไว้ล่วงหน้า ซึ่งทําให้เปิดแอปได้เร็วขึ้นและโต้ตอบได้ราบรื่นขึ้น
- ความเสถียร: เพิ่มความเสถียรของแอปเพื่อข้ามการจัดองค์ประกอบใหม่ที่ไม่จำเป็นอย่างมีประสิทธิภาพมากขึ้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพ
กำหนดค่าแอปอย่างถูกต้อง
หากแอปมีประสิทธิภาพต่ำ แสดงว่าอาจมีปัญหาเกี่ยวกับการกําหนดค่า ขั้นตอนแรกที่ดีคือตรวจสอบตัวเลือกการกําหนดค่าต่อไปนี้
- สร้างในโหมดรุ่นด้วย R8: ลองเรียกใช้แอปในโหมดรุ่น โหมดแก้ไขข้อบกพร่องมีประโยชน์ในการค้นหาปัญหาหลายอย่าง แต่อาจทำให้ประสิทธิภาพลดลงและทำให้ตรวจหาปัญหาอื่นๆ ได้ยาก นอกจากนี้ คุณควรเปิดใช้การเพิ่มประสิทธิภาพและการบีบอัดด้วยคอมไพเลอร์ R8 เพื่อให้มั่นใจว่าบิลด์รุ่นจะมีประสิทธิภาพและประสิทธิผล
- ใช้โปรไฟล์พื้นฐาน: โปรไฟล์พื้นฐานช่วยปรับปรุงประสิทธิภาพด้วยการคอมไพล์โค้ดล่วงหน้าสําหรับเส้นทางของผู้ใช้ที่สําคัญ เครื่องมือเขียนมีโปรไฟล์เริ่มต้น แต่คุณควรสร้างโปรไฟล์เฉพาะแอปด้วย ดูข้อมูลเพิ่มเติมเกี่ยวกับโปรไฟล์พื้นฐานในเอกสารประสิทธิภาพทั่วไปของ Android
เครื่องมือ
ทําความคุ้นเคยกับชุดเครื่องมือที่พร้อมให้ใช้งานเพื่อช่วยวัดและวิเคราะห์ประสิทธิภาพของแอป Compose
แนวทางปฏิบัติแนะนำ
โปรดคำนึงถึงแนวทางปฏิบัติแนะนำต่อไปนี้เมื่อพัฒนาแอปด้วย Compose
- หลีกเลี่ยงการคำนวณที่ใช้เวลานาน: ใช้
remember
เพื่อแคชผลลัพธ์ของการคำนวณที่ใช้เวลานาน - ช่วยเลย์เอาต์แบบ Lazy: ระบุคีย์ที่เสถียรให้กับเลย์เอาต์แบบ Lazy โดยใช้พารามิเตอร์
key
เพื่อลดการสร้างองค์ประกอบใหม่ที่ไม่จำเป็น - จำกัดการจัดเรียงใหม่ที่ไม่จำเป็น: ใช้
derivedStateOf
เพื่อจำกัดการจัดเรียงใหม่เมื่อสถานะมีการเปลี่ยนแปลงอย่างรวดเร็ว - เลื่อนการอ่านสถานะ: เลื่อนการอ่านสถานะไว้นานที่สุดโดยบรรจุไว้ในฟังก์ชัน LAMBDA
- ใช้ตัวแก้ไข Lambda สำหรับสถานะที่เปลี่ยนแปลง: ใช้ตัวแก้ไขที่อิงตาม Lambda เช่น
Modifier.offset { ... }
สำหรับตัวแปรสถานะที่เปลี่ยนแปลงบ่อย - หลีกเลี่ยงการเขียนย้อนกลับ: อย่าเขียนสถานะที่อ่านไปแล้วในคอมโพสิเบิล
ดูรายละเอียดเพิ่มเติมได้ที่คู่มือแนวทางปฏิบัติแนะนำ
ยอดดู
หากคุณทํางานกับมุมมองแทนการเขียน ให้ดูคําแนะนําปรับปรุงประสิทธิภาพเลย์เอาต์โดยเฉพาะ
แหล่งข้อมูลเพิ่มเติม
- คู่มือประสิทธิภาพของแอป: ดูแนวทางปฏิบัติแนะนำ ไลบรารี และเครื่องมือต่างๆ เพื่อปรับปรุงประสิทธิภาพบน Android
- ตรวจสอบประสิทธิภาพ: ตรวจสอบประสิทธิภาพของแอป
- การเปรียบเทียบ: เปรียบเทียบประสิทธิภาพของแอป
- การเริ่มต้นแอป: เพิ่มประสิทธิภาพการเริ่มต้นแอป
- โปรไฟล์พื้นฐาน: ทําความเข้าใจโปรไฟล์พื้นฐาน