| Platform seçin: | iOS+ Android Flutter Unity |
Başlangıç kılavuzundaki adımları uygulamanıza rağmen Crashlytics kontrol panelinde kilitlenmeleri hâlâ göremiyorsanız bu kılavuzu kullanın.
Uygulamanızı test etmek için kilitlenme oluşturma
Uygulamanıza, test amaçlı kilitlenme zorlamak için kullanabileceğiniz bir kod ekleyin.
Uygulamanıza, basıldığında kilitlenmeye neden olan bir düğme eklemek için aşağıdaki kodu kullanabilirsiniz. Düğme "Test Crash" (Kilitlenme Testi) olarak etiketlenir.
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
Xcode hata ayıklayıcısının bağlantısını keserek uygulamanızı Xcode'da derleyip çalıştırın.
Uygulamanızı bir test cihazında veya simülatörde derlemek için Build and then run the current scheme'i (Mevcut şemayı derle ve çalıştır) tıklayın.
Uygulamanız çalışmaya başlayana kadar bekleyin, ardından uygulamanızın ilk örneğini kapatmak için Şemayı veya işlemi çalıştırmayı durdur'u tıklayın. Bu ilk örnek, Crashlytics ile çakışan hata ayıklayıcıyı içerir.
Uygulamanızın ilk kilitlenme raporunu göndermek için test kilitlenmesini zorunlu kılın:
Test cihazınızın veya simülatörünüzün ana ekranından uygulamanızı açın.
Uygulamanızda, yukarıdaki kodu kullanarak eklediğiniz "Test Crash" düğmesine basın.
Uygulamanız kilitlendikten sonra, kilitlenme raporunu Firebase'e gönderebilmesi için uygulamayı Xcode'dan tekrar çalıştırın.
Test kilitlenme raporunuzu kontrol etmek için Firebase konsolunda DevOps ve Etkileşim > Crashlytics kontrol paneline gidin.
Konsolu yenilediyseniz ve beş dakika sonra test kilitlenmesini hâlâ 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ştirme
Test kilitlenmenizi Crashlytics kontrol panelinde görmüyorsanız sorunu bulmak için Crashlytics hata ayıklama günlüğünü kullanabilirsiniz.
Hata ayıklama günlüğünü etkinleştirme:
Xcode'da Product (Ürün) > Scheme (Şema) > Edit scheme (Şemayı düzenle) seçeneğini belirleyin.
Soldaki menüden Run'ı (Çalıştır) ve ardından Arguments (Bağımsız değişkenler) sekmesini seçin.
Arguments Passed on Launch (Başlatmada İletilen Parametreler) bölümüne
-FIRDebugEnabledifadesini ekleyin.
Test kilitlenmesini zorunlu kılın. Bu sayfadaki ilk bölümde bunun nasıl yapılacağı açıklanmaktadır.
Günlüklerinizde, Crashlytics tarafından gönderilen ve uygulamanızın kilitlenme verilerini Firebase'e gönderdiğini doğrulayan aşağıdaki dizeyi içeren bir günlük mesajı arayın.
Completed report submission
Beş dakika sonra bu günlüğü veya test kilitlenmenizi Firebase konsolunun DevOps & Engagement > Crashlytics kontrol panelinde hâlâ görmüyorsanız sorun giderme konusunda daha fazla yardım almak için günlük çıkışınızın bir kopyasıyla Firebase Destek Ekibi ile iletişime geçin.
Sonraki adımlar
- Onaylı raporlama, günlükler, anahtarlar ve önemli olmayan hataların izlenmesini ekleyerek kilitlenme raporu kurulumunuzu özelleştirin.