پیاده‌سازی Crashlytics خود را آزمایش کنید (پلاتفرم‌های Apple)

انتخاب پلاتفرم: iOS+‎ Android Flutter Unity


اگر راهنمای شروع به کار را دنبال کرده‌اید و همچنان خرابی‌ها را در داشبورد Crashlytics نمی‌بینید، از این راهنما استفاده کنید.

برای آزمایش پیاده‌سازی‌تان، خرابی اجباری ایجاد کنید

  1. کدی به برنامه‌تان اضافه کنید که بتوانید از آن برای ایجاد خرابی آزمایشی اجباری استفاده کنید.

    می‌توانید از کد زیر برای افزودن دکمه‌ای به برنامه‌تان استفاده کنید که با فشار دادن آن، برنامه ازکار بیفتد. دکمه با برچسب «خرابی آزمایشی» مشخص شده است.

    SwiftUI

    Button("Crash") {
      fatalError("Crash was triggered")
    }

    UIKit

    Swift

    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]
      }
    }

    Objective-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
  2. برنامه را در Xcode بسازید و اجرا کنید و اشکال‌زدای Xcode را قطع کنید.

    1. برای ساختن برنامه در دستگاه آزمایشی یا شبیه‌ساز، روی ساختن و سپس اجرای طرح کنونی کلیک کنید.

    2. صبر کنید تا برنامه‌تان اجرا شود، سپس روی توقف اجرای طرحواره یا کنش کلیک کنید تا نمونه اولیه برنامه‌تان بسته شود. این نمونه اولیه شامل اشکال‌زدایی است که با Crashlytics تداخل دارد.

  3. برای ارسال اولین گزارش خرابی برنامه‌تان، خرابی آزمایشی را اجباری کنید:

    1. برنامه را از صفحه اصلی دستگاه آزمایشی یا شبیه‌ساز باز کنید.

    2. در برنامه‌تان، دکمه «خرابی آزمایشی» را که بااستفاده از کد بالا اضافه کرده‌اید فشار دهید.

    3. پس‌از خرابی برنامه، آن را دوباره از Xcode اجرا کنید تا برنامه بتواند گزارش خرابی را به Firebase ارسال کند.

  4. در کنسول Firebase، به DevOps و تعامل > Crashlytics داشبورد بروید تا گزارش خرابی آزمایشی‌تان را بررسی کنید.

    اگر کنسول را بازآوری کرده‌اید و همچنان خرابی آزمایشی را پس‌از پنج دقیقه نمی‌بینید، گزارش‌گیری اشکال‌زدایی را فعال کنید (بخش بعدی).

فعال کردن گزارش‌گیری اشکال‌زدایی برای Crashlytics

اگر خرابی آزمایشی‌تان را در داشبورد Crashlytics نمی‌بینید، می‌توانید از گزارش اشکال‌زدایی برای Crashlytics استفاده کنید تا به ردیابی مشکل کمک کند.

  1. فعال کردن گزارش‌گیری اشکال‌زدایی:

    1. در Xcode، محصول > طرح > ویرایش طرح را انتخاب کنید.

    2. از منوِ سمت راست، اجرا را انتخاب کنید، سپس زبانه استدلال‌ها را انتخاب کنید.

    3. در بخش استدلال‌های منتقل‌شده در راه‌اندازی، -FIRDebugEnabled را اضافه کنید.

  2. ازکارافتادن آزمایشی را اجبار کنید. بخش اول این صفحه نحوه انجام این کار را توضیح می‌دهد.

  3. در گزارش‌هایتان، پیام گزارشی از Crashlytics را جستجو کنید که حاوی رشته زیر باشد، که تأیید می‌کند برنامه شما خرابی‌ها را به Firebase ارسال می‌کند.

    Completed report submission

اگر پس‌از پنج دقیقه هنوز این گزارش یا خرابی آزمایشی‌تان را در داشبورد DevOps و تعامل > Crashlytics کنسول Firebase نمی‌بینید، با پشتیبانی Firebase تماس بگیرید و نسخه‌ای از برونداد گزارش خود را ارائه دهید تا بتوانیم در عیب‌یابی بیشتر به شما کمک کنیم.

مراحل بعدی