Bu hızlı başlangıç kılavuzunda, Firebase Crashlytics ayarlarını uygulamanızda nasıl yapacağınız açıklanmaktadır. Crashlytics Flutter eklentisi sayesinde kapsamlı kilitlenmeler Firebase konsolunda görebilirsiniz.
Crashlytics kurulumunda hem komut satırı aracı hem de IDE'niz kullanılır. Kurulumu tamamlamak için, Search Ads 360'a gönderilen Firebase'e ilk kilitlenme raporunu gönderin.
Başlamadan önce
Henüz yapmadıysanız Flutter'ınızda Firebase'i yapılandırın ve başlatın belirler.
Önerilen: Otomatik içerik haritası günlükleri Kilitlenme, önemli olmayan veya ANR etkinliğiyle sonuçlanan kullanıcı işlemlerini anlamak için Firebase projenizde Google Analytics modunu etkinleştirmeniz gerekir.
Mevcut Firebase projenizde Google Analytics yoksa Google Analytics öğesini şuradan etkinleştirebilirsiniz: hesabınızın Entegrasyonlar
> Proje ayarlarıFirebase konsolunda kontrol edebilirsiniz. Yeni bir Firebase projesi oluşturuyorsanız Google Analytics özelliğini etkinleştirin müzakere tekniği de eklediniz.
İçerik haritası günlüklerinin tüm Android ve Apple platformları için kullanılabildiğini unutmayın. Crashlytics tarafından desteklenir (watchOS hariç).
1. adım: Crashlytics öğesini Flutter projenize ekleyin
Flutter projenizin kök dizininden aşağıdaki komutu çalıştırarak Crashlytics için Flutter eklentisi.
, içerik haritası günlükleri ayrıca uygulamanıza Google Analytics için Flutter eklentisini de ekleyin. Şunlardan emin olun: Google Analytics etkin Firebase projenizde.
flutter pub add firebase_crashlytics && flutter pub add firebase_analytics
Flutter projenizin kök dizininden aşağıdaki komutu çalıştırın:
flutterfire configure
Bu komutu çalıştırdığınızda Flutter uygulamanızın Firebase yapılandırması günceldir ve Android için gerekli Crashlytics Gradle eklentisini ekler. ekleyebilirsiniz.
Ardından Flutter projenizi yeniden derleyin:
flutter run
(İsteğe bağlı) Flutter projenizde
--split-debug-info
işareti kullanılıyorsa (ve isteğe bağlı olarak--obfuscate
işaretini) kullanarak, uygulamanız için okunabilir yığın izlemeleri (stack trace) göstermek için gereklidir.Apple platformları: Projenizde önerilen teknolojilerin kullanıldığından emin olun. sürüm yapılandırmasını (Flutter 3.12.0+ ve Crashlytics Flutter eklentisi 3.3.4+) kullanın. Flutter simgelerini (dSYM dosyaları) otomatik olarak oluşturup Crashlytics.
Android: Yüklemek için Firebase KSA'yı (v.11.9.0+) kullanın Flutter hata ayıklama sembolleri. Hata ayıklama sembollerini önce yüklemeniz gerekiyor karartılmış bir kod derlemesinden gelen kilitlenmeyi bildirir.
Flutter projenizin kök dizininden aşağıdaki kodu çalıştırın: komut:
firebase crashlytics:symbols:upload --app=FIREBASE_APP_ID PATH/TO/symbols
FIREBASE_APP_ID: Firebase Android uygulaması kimliğiniz (kimliğiniz değil: paket adı)
Örnek Firebase Android uygulaması kimliği:1:567383003300:android:17104a2ced0c9b9b
PATH/TO/symbols
: Yüklediğiniz dizin uygulamayı oluştururken--split-debug-info
bayrağına geç
2. Adım: Kilitlenme işleyicileri yapılandırın
Flutter'ın içindeyken gönderilen tüm hataları otomatik olarak yakalayabilirsiniz.
çerçevesine uygun şekilde FlutterError.onError
öğesini geçersiz kılarak
FirebaseCrashlytics.instance.recordFlutterFatalError
:
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
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 işleneceğine dair örnekler için bkz. Kilitlenme raporlarını özelleştirme.
3. Adım: Kurulumu tamamlamak için test kilitlenmesini zorunlu kılın
Crashlytics kurulumunu tamamlamak ve ilk verileri Crashlytics içinde görmek için Firebase konsolunun kontrol panelinde bir test istisnasının olması atılır.
Uygulamanıza, bir test istisnasını atılır.
Arama yapan bir hata işleyici eklediyseniz
FirebaseCrashlytics.instance.recordError(error, stack, fatal: true)
- üst düzeyZone
, uygulamanıza bir düğme eklemek için aşağıdaki kodu kullanabilirsiniz ise basıldığında bir test istisnası ortaya çıkar:TextButton( onPressed: () => throw Exception(), child: const Text("Throw Test Exception"), ),
Uygulamanızı derleyip çalıştırın.
Uygulamanızın ilk rapor:
Test cihazınızdan veya emülatörünüzden uygulamanızı açın.
Uygulamanızda, yukarıdaki koda bakın.
Şuraya gidin: Crashlytics kontrol paneli Firebase konsolunda test kilitlenmenizi görün.
Konsolu yenilediyseniz ve test kilitlenmesini hâlâ görmüyorsanız beş dakika sonra hata ayıklama günlük kaydını etkinleştirme uygulamanızın kilitlenme raporu gönderip göndermediğini kontrol edin.
.
Hepsi bu kadar! Crashlytics artık uygulamanızı kilitlenmelere karşı izliyor ve
Android, önemli olmayan hatalar ve ANR'ler. Şurayı ziyaret edin:
Crashlytics kontrol paneli
kullanarak tüm raporlarınızı ve istatistiklerinizi görüntüleyebilir ve inceleyebilirsiniz.
Sonraki adımlar
Kilitlenme raporu ayarlarınızı özelleştirme önemli olmayan ek hata kodları için kaydolma raporları, günlükler, anahtarlar ve izleme ekleyerek hatalar.
Google Play ile entegrasyon Android uygulamanızın kilitlenme raporlarını Google Play kanala göre filtreleyebilirsiniz doğrudan Crashlytics kontrol paneline ekleyebilirsiniz. Bu sayede videonuza daha iyi odaklanabilirsiniz kontrol panelinize göre ekleyebilirsiniz.
kod Android Studio'daki Uygulama Kalitesi Analizleri penceresiyle (ilk olarak, elektrikli Eel 2022.1.1).