Bagikan melalui


Android Debug Log

Salah satu trik yang sangat umum digunakan pengembang untuk men-debug aplikasi mereka adalah melakukan panggilan ke Console.WriteLine. Namun, pada platform seluler seperti Android tidak ada konsol. Perangkat Android menyediakan log yang dapat Anda gunakan saat menulis aplikasi. Ini kadang-kadang disebut sebagai logcat karena perintah yang Anda ketik untuk mengambilnya. Gunakan alat Log Debug untuk melihat data yang dicatat.

Gambaran Umum Log Debug Android

Alat Log Debug menyediakan cara untuk melihat output log saat menelusuri kesalahan aplikasi melalui Visual Studio. Log debug mendukung perangkat berikut:

  • Ponsel, tablet, dan pakaian Android fisik.
  • Perangkat Android Virtual yang berjalan di Android Emulator.

Catatan

Alat Log Debug tidak berfungsi dengan Xamarin Live Player.

Log Debug tidak menampilkan pesan log yang dihasilkan saat aplikasi berjalan mandiri di perangkat (yaitu, saat terputus dari Visual Studio).

Mengakses Log Debug dari Visual Studio

Untuk membuka alat Log Perangkat, klik ikon Log Perangkat (logcat) pada toolbar:

Location of Device Log tool on the toolbar

Secara bergantian, luncurkan alat Log Perangkat dari salah satu pilihan menu berikut:

  • Lihat > Log Perangkat Windows > Lainnya
  • Alat > Log Perangkat Android >

Cuplikan layar berikut mengilustrasikan berbagai bagian jendela Alat Debug:

Parts of the Debug Tool window

  • Pemilih Perangkat – Memilih perangkat fisik atau emulator yang berjalan untuk dipantau.

  • Entri Log – Tabel pesan log dari logcat.

  • Hapus Entri Log – Menghapus semua entri log saat ini dari tabel.

  • Putar/Jeda – Beralih antara memperbarui atau menjeda tampilan entri log baru.

  • Hentikan – Menghentikan tampilan entri log baru.

  • Kotak Pencarian – Masukkan string pencarian dalam kotak ini untuk memfilter subset entri log.

Saat jendela alat Log Debug ditampilkan, gunakan menu tarik-turun perangkat untuk memilih perangkat Android yang akan dipantau:

Location of Device Selector

Setelah perangkat dipilih, alat Log Perangkat secara otomatis menambahkan entri log dari aplikasi yang sedang berjalan - entri log ini ditampilkan dalam tabel entri log. Beralih antar perangkat berhenti dan memulai pengelogan perangkat. Perhatikan bahwa proyek Android harus dimuat sebelum perangkat apa pun akan muncul di pemilih perangkat. Jika perangkat tidak muncul di pemilih perangkat, verifikasi bahwa perangkat tersedia di menu drop-down perangkat Visual Studio di samping tombol Mulai .

Mengakses dari Baris Perintah

Opsi lain adalah melihat log debug melalui baris perintah. Buka jendela prompt perintah dan navigasikan ke folder platform-tools Android SDK (biasanya, folder platform-tools SDK terletak di C:\Program Files (x86)\Android\android-sdk\platform-tools).

Jika hanya satu perangkat (perangkat fisik atau emulator) yang terpasang, log dapat dilihat dengan memasukkan perintah berikut:

$ adb logcat

Jika lebih dari satu perangkat terpasang, perangkat harus diidentifikasi secara eksplisit. Misalnya adb -d logcat menampilkan log satu-satunya perangkat fisik yang terhubung, sementara logcat adb -e menunjukkan log dari satu-satunya emulator yang berjalan.

Perintah lainnya dapat ditemukan dengan memasukkan adb dan membaca pesan bantuan.

Menulis ke Log Debug

Pesan dapat ditulis ke Log Debug dengan menggunakan metode kelas Android.Util.Log . Contohnya:

string tag = "myapp";

Log.Info (tag, "this is an info message");
Log.Warn (tag, "this is a warning message");
Log.Error (tag, "this is an error message");

Ini menghasilkan output yang mirip dengan yang berikut ini:

I/myapp   (11103): this is an info message
W/myapp   (11103): this is a warning message
E/myapp   (11103): this is an error message

Dimungkinkan juga untuk menggunakan Console.WriteLine untuk menulis ke Log Debug - pesan ini muncul di logcat dengan format output yang sedikit berbeda (teknik ini sangat berguna saat men-debug aplikasi Xamarin.Forms di Android):

System.Console.WriteLine ("DEBUG - Button Clicked!");

Ini menghasilkan output yang mirip dengan yang berikut ini di logcat:

Info (19543) / mono-stdout: DEBUG - Button Clicked!

Pesan Menarik

Saat membaca log (dan terutama ketika memberikan cuplikan log kepada orang lain), menggunakan file log secara keseluruhan sering terlalu rumit. Untuk mempermudah menavigasi melalui pesan log, mulailah dengan mencari entri log yang menyerupan berikut ini:

I/ActivityManager(12944): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=GcTest.GcTest/gctest.Activity1 } from pid 24175

Secara khusus, cari baris yang cocok dengan ekspresi reguler yang juga berisi nama paket aplikasi:

^I.*ActivityManager.*Starting: Intent

Ini adalah baris yang sesuai dengan awal aktivitas, dan sebagian besar (tetapi tidak semua) dari pesan berikut harus berhubungan dengan aplikasi.

Perhatikan bahwa setiap pesan berisi pengidentifikasi proses (pid) dari proses yang menghasilkan pesan. Dalam pesan di atas ActivityManager , proses 12944 menghasilkan pesan. Untuk menentukan proses mana yang merupakan proses aplikasi yang sedang di-debug, cari mono. Pesan MonoRuntimeProvider :

I/ActivityThread(  602): Pub TouchTest.TouchTest.__mono_init__: mono.MonoRuntimeProvider

Pesan ini berasal dari proses yang dimulai. Semua pesan berikutnya yang berisi pid ini berasal dari proses yang sama.