Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Crashlytics uygulamanızı test edin

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.

Uygulamanızı test etmek için kilitlenmeyi zorlayın

  1. Uygulamanıza, bir test çökmesini zorlamak için kullanabileceğiniz bir kod ekleyin.

    Uygulamanıza basıldığında çökmeye neden olan bir düğme eklemek için aşağıdaki kodu kullanabilirsiniz. Düğme "Çökme Testi" olarak etiketlenmiştir.

    SwiftUI

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

    UIKit

    Süratli

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

    Amaç-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. Uygulamanızı Xcode'da oluşturun ve çalıştırın.

    1. Oluştur'a tıklayın ve ardından uygulamanızı bir test cihazında veya simülatörde oluşturmak için mevcut şemayı çalıştırın .

    2. Uygulamanız çalışana kadar bekleyin, ardından uygulamanızın ilk örneğini kapatmak için Şemayı veya eylemi çalıştırmayı durdur'u . Bu ilk örnek, Crashlytics'e müdahale eden hata ayıklayıcıyı içeriyordu.

  3. Uygulamanızın ilk kilitlenme raporunu göndermek için test kilitlenmesini zorlayın:

    1. Test cihazınızın veya simülatörünüzün ana ekranından uygulamanızı açın.

    2. Uygulamanızda, yukarıdaki kodu kullanarak eklediğiniz "Test Crash" düğmesine basın.

    3. Uygulamanız kilitlendikten sonra, uygulamanızın kilitlenme raporunu Firebase'e gönderebilmesi için Xcode'dan tekrar çalıştırın.

  4. Test çökmenizi görmek için Firebase konsolunun Crashlytics panosuna gidin.

Konsolu yenilediyseniz ve beş dakika sonra hala test çökmesini görmüyorsanız, hata ayıklama günlüğünü etkinleştirmeyi deneyin (sonraki bölüm).

Crashlytics için hata ayıklama günlüğünü etkinleştir

Crashlytics panosunda test kilitlenmenizi görmüyorsanız, sorunun izlenmesine yardımcı olması için Crashlytics için hata ayıklama günlüğünü kullanabilirsiniz.

  1. Hata ayıklama günlüğünü etkinleştir:

    1. Xcode'da Product > Scheme > Edit Scheme öğesini seçin.

    2. Soldaki menüden Çalıştır'ı seçin, ardından Bağımsız Değişkenler sekmesini seçin.

    3. Başlatmada Geçilen Bağımsız Değişkenler bölümünde, -FIRDebugEnabled ekleyin.

  2. Test kazasını zorla. Bu sayfadaki ilk bölüm, bunun nasıl yapılacağını açıklar.

  3. Günlüklerinizde, Crashlytics'ten, uygulamanızın Firebase'e kilitlenmeler gönderdiğini doğrulayan aşağıdaki dizeyi içeren bir günlük mesajı arayın.

    Completed report submission

Beş dakika sonra Firebase konsolunun Crashlytics panosunda bu günlüğü veya test çökmesini görmezseniz, daha fazla sorun gidermenize yardımcı olabilmemiz için günlük çıktınızın bir kopyasıyla Firebase Destek'e ulaşın.

Sonraki adımlar