Hata raporlarını yakalama ve okuma

Hata raporu; cihaz günlüklerini, yığın izlemeleri ve diğer teşhis bilgilerini içerir , uygulamanızdaki hataları bulup düzeltmenize yardımcı olacak bilgiler sağlar. Hata yakalamak için Hata raporu al geliştiricisini kullanarak Android Emülatör menüsüne giderek veya geliştirme makinenizdeki adb bugreport komutunu kullanın.

Şekil 1. Cihazdaki geliştirici seçenekleri.

Hata raporu almak için Geliştirici seçenekleri Hata raporu al seçeneğine erişmek için cihazı kullanın.

Bir cihazdan hata raporu alma

Şekil 2. Hata raporu hazır.

Hata raporunu doğrudan cihazınızdan almak için aşağıdakileri yapın:

  1. Geliştirici 'yi etkinleştir Seçenekler'i tıklayın.
  2. Geliştirici seçenekleri'nde Hata raporu al'a dokunun.
  3. İstediğiniz hata raporu türünü seçip Bildir'e dokunun.

    Bir süre sonra hata raporunun hazır olduğuna dair bir bildirim alırsınız. Şekil 2'de gösterilmiştir.

  4. Hata raporunu paylaşmak için bildirime dokunun.

Android Emulator'dan hata raporu alın

Android Emulator'dan File a error (Hata bildir) seçeneğini kullanabilirsiniz özelliğini kullanabilirsiniz:

  1. Şurada Diğer'i tıklayın: Emülatör paneli.
  2. Genişletilmiş denetimler penceresinde Hata raporu'nu seçin.

    Bu işlem, hata raporu ayrıntılarını (ör. ekran görüntüsü, AVD yapılandırma bilgileri ve hata raporu günlüğünü görebilirsiniz. Şunları yapabilirsiniz: Ayrıca, yeniden oluşturma adımlarını içeren bir mesaj yazarak rapora kaydedin.

  3. Hata raporunun toplanmasının tamamlanmasını bekleyin, ardından Raporu Kaydet'i tıklayın.

Adb kullanarak hata raporu al

Sadece tek bir cihaza bağlıysanız hata raporu almak için adb, aşağıdaki gibi:

$ adb bugreport E:\Reports\MyBugReports

Hata raporu için bir yol belirtmezseniz rapor yerel dizine bakın.

Birden fazla cihaz bağlıysa -s seçeneği. Şu adb komutlarını çalıştırarak cihazın seri numarasını alın ve hata raporunu oluşturun:

$ adb devices
List of devices attached
emulator-5554      device
8XV7N15C31003476 device

$ adb -s 8XV7N15C31003476 bugreport

Daha eski bir hata raporunu kaydet

Varsayılan olarak, hata raporları /bugreports konumuna kaydedilir ve şu komutu kullanın:

$ adb shell ls /bugreports/
bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS-dumpstate_log-yyy.txt
bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip
dumpstate-stats.txt

Daha sonra, zip dosyasını adb pull aracılığıyla alabilirsiniz:

$ adb pull /bugreports/bugreport-foo-bar.xxx.YYYY-MM-DD-HH-MM-SS.zip

Hata raporunun ZIP dosyasını inceleyin

Varsayılan olarak, zip dosyasının adı bugreport-BUILD_ID-DATE.zip ZIP dosyası birden fazla dosya içerebilir, ancak en önemli dosya bugreport-BUILD_ID-DATE.txt Bu hata raporudur ve sistem hizmetleri için teşhis çıktısı (dumpsys), hata günlükleri (dumpstate), ve sistem ileti günlükleri (logcat) Sistem mesajları, yığın izlemeleri (stack trace) içeriyor Cihaz bir hata verdiğinde ve Log sınıf.

Zip dosyası, şunları içeren bir version.txt meta veri dosyası içeriyor: Android yayın mektubu hazırlayacağız. Sistem izleme etkinleştirildiğinde, zip dosyası da systrace.txt dosyası içeriyor. İlgili içeriği oluşturmak için kullanılan Systrace aracı performansın analiz edilmesine yardımcı olur görüntüleme zamanlarını yakalayıp görüntüleyerek uygulamanızın uygulama işlemleri ve diğer Android sistem işlemleri.

dumpstate aracı, dosyaları cihazın dosya sisteminden kopyalar FS klasörünün altındaki ZIP dosyasına yapıştırın. Örneğin, cihazdaki bir /dirA/dirB/fileC dosyası, ZIP dosyasında FS/dirA/dirB/fileC girişi.

Şekil 3. Hata raporu dosya yapısı.

Daha fazla bilgi için bkz. Hata raporlarını okuma.

Kullanıcılarınızdan raporlar alın

Uygulamayı kullanırken hata raporu almak faydalıdır ancak son kullanıcılarınız bu tür hata raporlarını kolayca paylaşamaz. sizinle. Gerçek kullanıcılardan yığın izleme içeren kilitlenme raporları almak için Google Play ve Firebase kilitlenme raporlarından yararlanma özellikleri.

Google Play Console

Raporlar Google Play Console kilitlenmelerine ilişkin verileri görüntülemek için uygulamanızı Google Play'den yükleyen kullanıcılardan gelen yanıt (ANR) hatalarının sayısı. Önceki altı aya ait veriler mevcuttur.

Daha fazla bilgi için bkz. Kilitlenmeler ve uygulama yanıt vermiyor (ANR) hatalarını görüntüleme inceleyebilirsiniz.

Firebase kilitlenme raporu

Firebase Crashlytics raporlaması, uygulamasını indirin. Hatalar, benzer yığın izlemelere (stack trace) ve kullanıcılarınız üzerindeki etkinin şiddetine göre öncelik sırasına koyulur. Otomatik biçimlere ek olarak, kilitlenmeye yol açan adımların yakalanmasına yardımcı olması için özel etkinliklerin kaydını tutabilirsiniz.

Herhangi bir kullanıcıdan kilitlenme raporları almaya başlamak için Firebase bağımlılıkları build.gradle dosyanıza. Daha fazla bilgi için bkz. Firebase Crashlytics.