บังคับให้เกิดข้อขัดข้องเพื่อทดสอบการใช้งานของคุณ
เพิ่มโค้ดลงในแอปที่คุณสามารถใช้เพื่อบังคับการทดสอบข้อขัดข้อง
คุณสามารถใช้โค้ดต่อไปนี้เพื่อเพิ่มปุ่มลงในแอปของคุณซึ่งเมื่อกดแล้วจะทำให้เกิดข้อขัดข้อง ปุ่มนี้มีป้ายกำกับว่า "ทดสอบความผิดพลาด"
SwiftUI
Button("Crash") { fatalError("Crash was triggered") }
UIKit
สวิฟท์
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let button = UIButton(type: .roundedRect) button.frame = CGRect(x: 20, y: 50, width: 100, height: 30) button.setTitle("Test Crash", for: []) button.addTarget(self, action: #selector(self.crashButtonTapped(_:)), for: .touchUpInside) view.addSubview(button) } @IBAction func crashButtonTapped(_ sender: AnyObject) { let numbers = [0] let _ = numbers[1] } }
วัตถุประสงค์-C
#import "ViewController.h" @implementation ViewController ‐ (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. UIButton* button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; button.frame = CGRectMake(20, 50, 100, 30); [button setTitle:@"Test Crash" forState:UIControlStateNormal]; [button addTarget:self action:@selector(crashButtonTapped:) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:button]; } ‐ (IBAction)crashButtonTapped:(id)sender { @[][1]; } @end
สร้างและรันแอปของคุณใน Xcode โดยไม่ได้เชื่อมต่อดีบักเกอร์ Xcode
คลิก
Build จากนั้นเรียกใช้รูปแบบปัจจุบัน เพื่อสร้างแอปของคุณบนอุปกรณ์ทดสอบหรือโปรแกรมจำลองรอจนกระทั่งแอปของคุณทำงาน จากนั้นคลิก
เรียกใช้รูปแบบหรือการดำเนินการ เพื่อปิดอินสแตนซ์เริ่มต้นของแอปของคุณ อินสแตนซ์เริ่มต้นนี้มีดีบักเกอร์ที่รบกวน Crashlytics
บังคับให้ทดสอบข้อขัดข้องเพื่อส่งรายงานข้อขัดข้องแรกของแอป:
เปิดแอปของคุณจากหน้าจอหลักของอุปกรณ์ทดสอบหรือเครื่องจำลองของคุณ
ในแอปของคุณ ให้กดปุ่ม "ทดสอบข้อขัดข้อง" ที่คุณเพิ่มโดยใช้โค้ดด้านบน
หลังจากที่แอปของคุณขัดข้อง ให้เรียกใช้อีกครั้งจาก Xcode เพื่อให้แอปของคุณสามารถส่งรายงานข้อขัดข้องไปยัง Firebase
ไปที่ แดชบอร์ด Crashlytics ของคอนโซล Firebase เพื่อดูการทดสอบข้อขัดข้อง
หากคุณรีเฟรชคอนโซลแล้ว แต่ยังไม่เห็นการทดสอบหยุดทำงานหลังจากผ่านไปห้านาที ให้ลองเปิดใช้งานการบันทึกการแก้ไขข้อบกพร่อง (ส่วนถัดไป)
เปิดใช้การบันทึกการแก้ไขข้อบกพร่องสำหรับ Crashlytics
หากคุณไม่เห็นการทดสอบข้อขัดข้องในหน้าแดชบอร์ด Crashlytics คุณสามารถใช้การบันทึกการแก้ไขข้อบกพร่องสำหรับ Crashlytics เพื่อช่วยติดตามปัญหา
เปิดใช้งานการบันทึกการแก้ไขข้อบกพร่อง:
ใน Xcode เลือก ผลิตภัณฑ์ > โครงการ > แก้ไขโครงการ
เลือก เรียกใช้ จากเมนูด้านซ้าย จากนั้นเลือกแท็บ อาร์กิวเมนต์
ในส่วน Arguments Passed on Launch ให้เพิ่ม
-FIRDebugEnabled
บังคับให้ทดสอบการชน ส่วนแรกของหน้านี้อธิบายวิธีการทำเช่นนี้
ภายในบันทึก ให้ค้นหาข้อความบันทึกจาก Crashlytics ที่มีสตริงต่อไปนี้ ซึ่งยืนยันว่าแอปของคุณส่งข้อขัดข้องไปยัง Firebase
Completed report submission
หากคุณไม่เห็นบันทึกนี้หรือการทดสอบข้อขัดข้องในหน้าแดชบอร์ด Crashlytics ของคอนโซล Firebase หลังจากผ่านไปห้านาที โปรดติดต่อ ทีมสนับสนุน Firebase พร้อมสำเนาเอาต์พุตบันทึกของคุณ เพื่อให้เราช่วยคุณแก้ปัญหาเพิ่มเติมได้
ขั้นตอนถัดไป
- ปรับแต่งการตั้งค่ารายงานข้อขัดข้องของคุณ โดยเพิ่มการรายงานที่เลือก บันทึก คีย์ และการติดตามข้อผิดพลาดที่ไม่ร้ายแรง