Mengambil dan membaca laporan bug

Laporan bug berisi log perangkat, stack trace, dan informasi diagnostik lainnya untuk membantu Anda menemukan dan memperbaiki bug dalam aplikasi. Untuk memperoleh laporan bug dari perangkat, gunakan Ambil laporan bug dari opsi developer di perangkat, menu Android Emulator, atau perintah adb bugreport pada mesin pengembangan.

Gambar 1. Opsi developer di perangkat.

Untuk mengambil laporan bug, Anda harus mengaktifkan Opsi developer di perangkat untuk mengakses opsi Ambil laporan bug.

Mengambil laporan bug dari perangkat

Gambar 2. Laporan bug sudah siap.

Untuk mendapatkan laporan bug langsung dari perangkat, lakukan langkah berikut:

  1. Aktifkan Opsi Developer.
  2. Pada Opsi developer, ketuk Ambil laporan bug.
  3. Pilih jenis laporan bug yang Anda inginkan, dan ketuk Laporkan.

    Setelah beberapa saat, Anda akan mendapatkan notifikasi bahwa laporan bug sudah siap, seperti yang ditunjukkan pada gambar 2.

  4. Untuk membagikan laporan bug, ketuk notifikasi.

Mengambil laporan bug dari Android Emulator

Dari Android Emulator, Anda dapat menggunakan fitur File a bug pada jendela Extended controls:

  1. Klik More pada panel Emulator.
  2. Di jendela Extended controls, pilih Bug report.

    Tindakan ini akan membuka layar tempat Anda dapat melihat detail laporan bug seperti screenshot, info konfigurasi AVD, dan log laporan bug. Anda juga dapat mengetik pesan yang berisi langkah-langkah reproduksi masalah untuk disimpan bersama laporan.

  3. Tunggu laporan bug selesai dikumpulkan, lalu klik Save Report.

Mengambil laporan bug menggunakan adb

Jika hanya ada satu perangkat yang terhubung, Anda dapat memperoleh laporan bug menggunakan adb sebagai berikut:

$ adb bugreport E:\Reports\MyBugReports

Jika Anda tidak menentukan jalur untuk laporan bug, laporan akan disimpan ke direktori lokal.

Jika ada beberapa perangkat yang terhubung, Anda harus menentukan perangkat dengan opsi -s. Jalankan perintah adb berikut untuk mendapatkan nomor seri perangkat dan menghasilkan laporan bug:

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

$ adb -s 8XV7N15C31003476 bugreport

Menyimpan laporan bug yang lebih lama

Secara default, laporan bug disimpan di /bugreports dan dapat dilihat menggunakan perintah berikut:

$ 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

Selanjutnya, Anda dapat menarik file ZIP melalui adb pull:

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

Memeriksa file ZIP laporan bug

Secara default, file ZIP ini disebut bugreport-BUILD_ID-DATE.zip. File ZIP dapat berisi beberapa file, tetapi file yang paling penting adalah bugreport-BUILD_ID-DATE.txt. File ini adalah laporan bug yang berisi output diagnostik untuk layanan sistem (dumpsys), log error (dumpstate), dan log pesan sistem (logcat). Pesan sistem mencakup pelacakan tumpukan saat perangkat menampilkan error, dan pesan yang ditulis dari semua aplikasi dengan class Log.

File ZIP ini berisi file metadata version.txt yang berisi huruf rilis Android. Jika systrace diaktifkan, file ZIP juga berisi file systrace.txt. Alat Systrace membantu menganalisis performa aplikasi Anda dengan mengambil dan menampilkan waktu eksekusi proses aplikasi Anda dan proses sistem Android lainnya.

Alat dumpstate menyalin file dari sistem file perangkat ke file ZIP pada folder FS sehingga Anda dapat mereferensikannya. Misalnya, file /dirA/dirB/fileC di perangkat akan menghasilkan entri FS/dirA/dirB/fileC dalam file ZIP tersebut.

Gambar 3. Struktur file laporan bug.

Untuk mengetahui informasi selengkapnya, lihat Membaca laporan bug.

Mendapatkan laporan dari pengguna

Mendapatkan laporan bug sangat membantu jika Anda menggunakan sendiri aplikasi tersebut, tetapi pengguna akhir tidak akan dapat membagikan jenis laporan bug ini kepada Anda dengan mudah. Untuk mendapatkan laporan kerusakan beserta stack trace dari pengguna sebenarnya, manfaatkan fitur pelaporan error Google Play dan Firebase.

Konsol Google Play

Anda dapat memperoleh laporan dari Konsol Google Play untuk melihat data kerusakan dan error aplikasi tidak merespons (ANR) dari pengguna yang menginstal aplikasi Anda dari Google Play. Data tersedia dari rentang waktu enam bulan ke belakang.

Untuk mengetahui informasi selengkapnya, lihat Menampilkan kerusakan & error aplikasi tidak merespons (ANR) di bantuan Konsol Play.

Firebase Crash Reporting

Pelaporan Firebase Crashlytics membuat laporan mendetail dari error dalam aplikasi Anda. Error dikelompokkan ke dalam masalah berdasarkan kemiripan stack trace, dan diprioritaskan berdasarkan tingkat keseriusan dampaknya terhadap pengguna. Selain laporan otomatis, Anda dapat membuat log peristiwa kustom untuk membantu mengetahui langkah yang menyebabkan error.

Untuk mulai menerima laporan kerusakan dari pengguna, tambahkan dependensi Firebase ke file build.gradle Anda. Untuk informasi selengkapnya, lihat Firebase Crashlytics.