了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

Firebase Crashlytics'i kullanmaya başlayın

Bu hızlı başlangıç, Firebase konsolunda kapsamlı kilitlenme raporları alabilmeniz için uygulamanızda Firebase Crashlytics'i Crashlytics Flutter eklentisiyle nasıl kuracağınızı açıklar.

Crashlytics'i kurmak, hem komut satırı aracını hem de IDE'nizi kullanmayı içerir. Kurulumu tamamlamak için, ilk kilitlenme raporunuzu Firebase'e göndermek üzere bir test istisnasını atmaya zorlamanız gerekir.

Sen başlamadan önce

  1. Henüz yapmadıysanız Flutter projenizde Firebase'i yapılandırın ve başlatın .

  2. Önerilen : Kilitlenme sorunu yaşamayan kullanıcılar, içerik haritası günlükleri ve hız uyarıları gibi özellikleri almak için Firebase projenizde Google Analytics'i etkinleştirmeniz gerekir.

    Crashlytics tarafından desteklenen tüm Android ve Apple platformları (watchOS hariç), Google Analytics'in bu özelliklerinden yararlanabilir.

    Firebase projenizde Google Analytics'in etkinleştirildiğinden emin olun: > Proje ayarları > Entegrasyonlar sekmesine gidin, ardından Google Analytics için ekrandaki talimatları izleyin.

1. Adım : Crashlytics'i Flutter projenize ekleyin

  1. Crashlytics Flutter eklentisini yüklemek için Flutter projenizin kökünden aşağıdaki komutu çalıştırın:

    flutter pub add firebase_crashlytics
    
  2. Flutter projenizin kök dizininden aşağıdaki komutu çalıştırın:

    flutterfire configure
    

    Bu komutu çalıştırmak, Flutter uygulamanızın Firebase yapılandırmasının güncel olmasını sağlar ve Android için gerekli Crashlytics Gradle eklentisini uygulamanıza ekler.

  3. Tamamlandığında, Flutter projenizi yeniden oluşturun:

    flutter run
    
  4. (İsteğe bağlı) Flutter projeniz --split-debug-info bayrağını (ve isteğe bağlı olarak --obfuscate bayrağını ) kullanıyorsa, Android sembollerini yüklemek için Firebase CLI'yi (v.11.9.0+) kullanmanız gerekir.

    Flutter projenizin kök dizininden aşağıdaki komutu çalıştırın:

    firebase crashlytics:symbols:upload --app=APP_ID PATH/TO/symbols

    PATH/TO /symbols dizini, uygulamayı oluştururken --split-debug-info bayrağına ilettiğiniz dizinle aynıdır.

2. Adım : Kilitlenme işleyicilerini yapılandırın

FirebaseCrashlytics.instance.recordFlutterFatalError ile FlutterError.onError öğesini geçersiz kılarak Flutter çerçevesi içinde atılan tüm hataları otomatik olarak yakalayabilirsiniz:

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  await Firebase.initializeApp();

  // Pass all uncaught "fatal" errors from the framework to Crashlytics
  FlutterError.onError = FirebaseCrashlytics.instance.recordFlutterFatalError;

  runApp(MyApp());
}

Flutter çerçevesi tarafından işlenmeyen eşzamansız hataları yakalamak için şunu kullanın: PlatformDispatcher.instance.onError :

Future<void> main() async {
    WidgetsFlutterBinding.ensureInitialized();
    await Firebase.initializeApp();
    FlutterError.onError = (errorDetails) {
      FirebaseCrashlytics.instance.recordFlutterFatalError(errorDetails);
    };
    // Pass all uncaught asynchronous errors that aren't handled by the Flutter framework to Crashlytics
    PlatformDispatcher.instance.onError = (error, stack) {
      FirebaseCrashlytics.instance.recordError(error, stack, fatal: true);
      return true;
    };
    runApp(MyApp());

}

Diğer hata türlerinin nasıl ele alınacağına ilişkin örnekler için Kilitlenme raporlarını özelleştirme bölümüne bakın.

3. Adım : Kurulumu bitirmek için bir test çökmesine zorlayın

Crashlytics kurulumunu tamamlamak ve Firebase konsolunun Crashlytics kontrol panelinde ilk verileri görmek için bir test istisnasını atılmaya zorlamanız gerekir.

  1. Uygulamanıza, bir test istisnasını atılmaya zorlamak için kullanabileceğiniz kod ekleyin.

    Üst düzey Zone FirebaseCrashlytics.instance.recordError(error, stack, fatal: true) çağıran bir hata işleyici eklediyseniz, uygulamanıza basıldığında hata veren bir düğme eklemek için aşağıdaki kodu kullanabilirsiniz. bir test istisnası:

    TextButton(
        onPressed: () => throw Exception(),
        child: const Text("Throw Test Exception"),
    ),
    
  2. Uygulamanızı oluşturun ve çalıştırın.

  3. Uygulamanızın ilk raporunu göndermek için test istisnasını atılmaya zorlayın:

    1. Uygulamanızı test cihazınızdan veya öykünücünüzden açın.

    2. Uygulamanızda, yukarıdaki kodu kullanarak eklediğiniz test istisnası düğmesine basın.

  4. Test kilitlenmenizi görmek için Firebase konsolunun Crashlytics kontrol paneline gidin.

    Konsolu yenilediyseniz ve beş dakika geçmesine rağmen test kilitlenmesini hala görmüyorsanız, uygulamanızın kilitlenme raporları gönderip göndermediğini görmek için hata ayıklama günlüğünü etkinleştirin .


Ve bu kadar! Crashlytics artık uygulamanızı kilitlenmelere ve Android'de önemli olmayan hatalara ve ANR'lere karşı izliyor. Tüm raporlarınızı ve istatistiklerinizi görüntülemek ve araştırmak için Crashlytics kontrol panelini ziyaret edin.

Sonraki adımlar