ข้อขัดข้องและ ANR ใน Android จะสร้างสแต็กเทรซซึ่งเป็นชุดข้อมูลลำดับของฟังก์ชันที่มีการเรียกใช้ซึ่งฝังอยู่ในโปรแกรมจนถึงเวลาที่เกิดข้อขัดข้อง ชุดข้อมูลเหล่านี้ช่วยให้คุณระบุและแก้ไขปัญหาที่เกิดขึ้นในแหล่งที่มาได้
หากพัฒนาแอปหรือเกมโดยใช้ Java และใช้ ProGuard ในการเพิ่มประสิทธิภาพแอปและปรับให้ยากต่อการอ่าน (Obfuscate) คุณสามารถอัปโหลดไฟล์การแมป ProGuard สำหรับแอปแต่ละเวอร์ชันใน Play Console หากพัฒนาแอปหรือเกมโดยใช้โค้ดแบบเนทีฟ เช่น C++ คุณสามารถอัปโหลดไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่องของแอปแต่ละเวอร์ชันใน Play Console ซึ่งจะช่วยให้วิเคราะห์และแก้ไขข้อขัดข้องและ ANR ได้ง่ายขึ้น
สำคัญ: เฉพาะไฟล์การแมปที่เข้ากันได้กับ ReTrace เท่านั้นที่รองรับการถอดรหัสซอร์สโค้ดที่สร้างความสับสนของแอปที่คอมไพล์ใน Java ซึ่งเป็นรูปแบบเดียวกับที่ ProGuard หรือ R8 ใช้
ขั้นตอนที่ 1: สร้างไฟล์สำหรับการถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือไฟล์สำหรับการแทนที่ด้วยสัญลักษณ์
หากต้องการถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือแทนที่ด้วยสัญลักษณ์สำหรับข้อขัดข้องและ ANR ของแอปเวอร์ชันหนึ่ง คุณต้องสร้างไฟล์ที่จำเป็นสำหรับแอปเวอร์ชันเดียวกันก่อน คุณต้องสร้างและอัปโหลดไฟล์สำหรับแอปเวอร์ชันใหม่แต่ละเวอร์ชันเพื่อให้การถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือการแทนที่ด้วยสัญลักษณ์ใช้งานได้
ขั้นตอนที่ 2: อัปโหลดไฟล์สำหรับถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือไฟล์สำหรับแทนที่ด้วยสัญลักษณ์
หากต้องการถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือแทนที่ด้วยสัญลักษณ์สำหรับข้อขัดข้องและ ANR ของแอปเวอร์ชันหนึ่ง คุณต้องอัปโหลดไฟล์สำหรับถอดรหัสซอร์สโค้ดที่สร้างความสับสนหรือไฟล์สำหรับแทนที่ด้วยสัญลักษณ์ของแอปแต่ละเวอร์ชัน
สำคัญ: ขั้นตอนนี้จำเป็นสำหรับนักพัฒนาแอปที่ใช้ APK เท่านั้น คุณไม่จำเป็นต้องดำเนินการใดๆ หากใช้ App Bundle และปลั๊กอิน Android Gradle เวอร์ชัน 4.1 ขึ้นไป เราจะดึงไฟล์สำหรับการถอดรหัสซอร์สโค้ดที่สร้างความสับสนจาก Bundle โดยอัตโนมัติ และคุณข้ามไปที่ขั้นตอนที่ 3: ดูสแต็กเทรซของข้อขัดข้องที่ถอดรหัสซอร์สโค้ดที่สร้างความสับสนแล้วได้เลย ดูข้อมูลเพิ่มเติมเกี่ยวกับ App Bundle ได้ที่เว็บไซต์ของนักพัฒนาแอป Android
ขั้นตอนที่ 3: ดูสแต็กเทรซของข้อขัดข้องที่ถอดรหัสซอร์สโค้ดที่สร้างความสับสนแล้ว
เมื่อคุณอัปโหลดไฟล์การแมปของ ProGuard หรือไฟล์สัญลักษณ์สำหรับแก้ไขข้อบกพร่องสำหรับแอปแต่ละเวอร์ชันแล้ว ระบบจะถอดรหัสซอร์สโค้ดที่สร้างความสับสนของข้อขัดข้องและ ANR ที่เกิดขึ้นหลังจากนั้น คุณตรวจสอบสแต็กเทรซที่ถอดรหัสซอร์สโค้ดที่สร้างความสับสนของข้อขัดข้องและ ANR แต่ละรายการได้ในหน้าข้อขัดข้องและ ANRของแอป
- เปิด Play Console
- เลือกแอป
- ที่เมนูด้านซ้าย ให้เลือกตรวจสอบและปรับปรุง > Android Vitals > ข้อขัดข้องและ ANR
- เลือกข้อขัดข้อง
- ในส่วน "สแต็กเทรซ" คุณจะเห็นสแต็กเทรซที่ถอดรหัสซอร์สโค้ดที่สร้างความสับสนและสแต็กเทรซที่แทนที่ด้วยสัญลักษณ์
สำคัญ: เมื่อคุณอัปโหลดไฟล์การแมปของเวอร์ชันแอปแล้ว ระบบจะถอดรหัสซอร์สโค้ดที่สร้างความสับสนเฉพาะข้อขัดข้องและ ANR ที่เกิดขึ้นในอนาคตของแอปเวอร์ชันนั้นเท่านั้น ระบบจะไม่ถอดรหัสซอร์สโค้ดที่สร้างความสับสนของข้อขัดข้องและ ANR ของเวอร์ชันแอปที่เกิดขึ้นก่อนที่คุณจะอัปโหลดไฟล์การแมปที่เกี่ยวข้อง