Mobile App WikiMobile App Wiki
WikiApp DiscoverDiscuss

Wiki

    mobileapp.wiki

    Wiki

    • ASO17
    • Monetizasyon14
    • Mağaza Politikaları20
    • Metrikler15
    • Geliştirme25
    • Pazarlama15
    • Hukuk9
    • UI/UX14
    • Test & QA10
    • Altyapı10

    mobileapp.wiki

    Ana Sayfa/Test & QA/Crash Reporting (Crashlytics & Sentry)
    Test & QA4 dk okuma

    Crash Reporting (Crashlytics & Sentry)

    Uygulama çökme raporlama rehberi. Firebase Crashlytics ve Sentry ile crash-free rate yönetimi, stack trace analizi ve production hata izleme.

    Crash Reporting (Crashlytics & Sentry)

    İçindekiler

    Crash Reporting Nedir?Neden Önemli?AraçlarFirebase Crashlytics (Google)SentryBugsnagCrash Raporu İçerirCrash-Free RateCrash TürleriNative CrashJavaScript Exception (React Native)ANR (Application Not Responding) - AndroidOOM (Out of Memory)Best PracticesEntegrasyonİzlemeDüzeltmeReact Native İçinİlgili Konular

    Crash Reporting Nedir?

    Uygulama çöktüğünde (crash) otomatik olarak hata raporunun sunucuya gönderilmesi ve geliştiricinin bu raporları analiz etmesidir. Production'daki sorunları gerçek zamanlı görmek için kritik bir araçtır. 2026 itibarıyla crash reporting, mobil uygulama geliştirmenin olmazsa olmazıdır.

    Neden Önemli?

    • Kullanıcının %70'i crash yaşadıktan sonra uygulamayı SİLER
    • App Store/Play Store crash-free rate'i sıralama faktörü olarak kullanır
    • Kötü review'lerin #1 nedeni crash ve yavaşlık
    • Featured olma için %99+ crash-free rate beklenir
    • Apple ve Google, crash rate yüksek uygulamaları arama sonuçlarında geri sıralara atar

    Araçlar

    Firebase Crashlytics (Google)

    • Ücretsiz ve sınırsız
    • Gerçek zamanlı crash raporları
    • Stack trace + device bilgisi
    • Breadcrumb (crash öncesi kullanıcı aksiyonları)
    • iOS + Android + React Native desteği
    • Firebase Analytics ile entegre
    • Velocity alerts (ani crash artışında bildirim)

    Sentry

    • Crash + error + performance monitoring
    • Ücretsiz tier mevcut (5K event/ay)
    • Source map desteği (JS/TS - okunabilir stack trace)
    • Release tracking ve regression tespiti
    • Session replay (mobil için sınırlı)
    • iOS, Android, React Native, Flutter desteği
    • Issue grouping ve assignment

    Bugsnag

    • Stability score ile genel sağlık görünümü
    • Error grouping (akıllı gruplama)
    • Release health dashboard
    • Feature flag entegrasyonu

    Crash Raporu İçerir

    • Stack trace: Hatanın tam kodu ve çağrı zinciri
    • Device info: Model, OS version, memory, disk, battery
    • Breadcrumbs: Crash öncesi kullanıcı aksiyonları (navigation, tap, API call)
    • Custom keys: Geliştiricinin eklediği ekstra bilgi (user state, feature flag)
    • User info: Kullanıcı ID (varsa, PII dikkat)
    • App info: Versiyon, build number, binary architecture

    Crash-Free Rate

    Formül: Crash-free sessions / Toplam sessions x 100

    RateDurumAksiyon
    %99.5+MükemmelKorumaya devam
    %99.0-99.5İyiİyileştirme fırsatı
    %98.0-99.0Kabul edilebilirTop crash'lere odaklan
    < %98SorunluAcil müdahale gerekli

    Crash Türleri

    Native Crash

    • Segmentation fault, null pointer dereference
    • Memory corruption
    • Stack overflow
    • dSYM (iOS) / mapping file (Android) ile sembolizasyon gerekli

    JavaScript Exception (React Native)

    • Unhandled promise rejection
    • TypeError, ReferenceError
    • Source map ile okunabilir stack trace
    • ErrorBoundary ile yakalanabilir (ama crash'i önlemez)

    ANR (Application Not Responding) - Android

    • Main thread 5+ saniye bloke
    • Input event 10+ saniye yanıtsız
    • Google Play Vitals'da ayrı metrik
    • Background ANR: BroadcastReceiver timeout

    OOM (Out of Memory)

    • iOS'ta Jetsam tarafından öldürülme (crash raporu oluşmayabilir)
    • Memory warning'leri handle et
    • Büyük görsel/video'da dikkatli ol

    Best Practices

    Entegrasyon

    • Uygulama ilk yüklendiğinde Crashlytics/Sentry initialize et
    • Source map / dSYM yükle (okunabilir stack trace için)
    • Breadcrumb ekle (önemli aksiyonlarda)
    • Custom key'ler ekle (kullanıcı durumu, sayfa bilgisi)
    • CI/CD'den otomatik dSYM/source map upload

    İzleme

    • Günlük crash raporu kontrol et
    • Yeni release sonrası crash spike izle
    • Top crash'leri önceliklendir (etkilenen kullanıcı sayısına göre)
    • Regression alert'leri kur (Slack/Discord entegrasyonu)

    Düzeltme

    • Top 5 crash'i her sprint'te ele al
    • Crash → fix → release → verify döngüsü
    • Non-fatal error'ları da takip et (crash değildir ama sorun)
    • Crash reproducing: Device info ve breadcrumb'larla senaryoyu yeniden oluştur

    React Native İçin

    • Crashlytics: @react-native-firebase/crashlytics paketi
    • Sentry: @sentry/react-native paketi
    • JavaScript exception'ları ve native crash'ler ayrı raporlanır
    • Source map yüklemeyi CI/CD pipeline'ına ekle
    • Hermes engine kullanıyorsan Hermes source map gerekli
    • ErrorBoundary ile graceful fallback UI göster

    Crash reporting olmadan production'a çıkmak, gözleri kapalı araba sürmek gibidir. İlk günden entegre edin.

    İlgili Konular

    • Regression Testing & Release QA
    • Error Monitoring & Logging
    • Custom Product Pages & Store Listing Varyantları

    Bu içeriği nasıl buldunuz?

    Paylaş

    ← Önceki

    Beta Testing

    Sonraki →

    A/B Testing (Uygulama Ici)

    İlgili İçerikler

    Beta Testing

    Mobil uygulama beta test süreci rehberi. TestFlight ve Google Play Testing ile closed/open beta, geri bildirim toplama ve kalite güvence stratejileri.

    A/B Testing (Uygulama Ici)

    Mobil uygulama içi A/B testing rehberi. Firebase Remote Config, Statsig ve RevenueCat ile experiment tasarımı ve istatistiksel anlamlılık analizi.

    Performance Profiling

    Mobil uygulama performans profiling rehberi. Startup time, frame rate, memory ve battery analizi araçları ile optimizasyon teknikleri detayları.

    Unit Testing (Mobil)

    Mobil uygulama birim test rehberi. Jest, XCTest ve JUnit araçları, AAA pattern, test coverage hedefleri ve platform bazlı test stratejileri.

    E2E Testing (Uçtan Uca Test)

    Mobil uygulama uçtan uca (E2E) test rehberi. Detox, Maestro ve Appium ile test otomasyonu, flaky test çözümleri ve bulut test servisleri.

    Android Kapalı Test

    Android Kapalı Test hizmeti için androidtesti.com platformunu ziyaret edin.

    androidtesti.com