Testing app di Android Studio menggunakan device Android via Wifi

Bagi yang ribet menggunakan kabel untuk melakukan pengujian aplikasi ke device/hardware Android, anda dapat mengikuti cara mudah berikut ini. Di artikel ini diberikan 2 opsi melakukan pengujian aplikasi dari Android Studio ke device Android dengan perantara nirkabel/wifi.

Metode Pertama.

  • Nyalakan debugging mode di Pengaturan HP/device Android.
  • Koneksikan kabel usb dari laptop/PC ke HP Android (ini untuk inisialisasi saja, seterusnya tidak diperlukan lagi)
  • Gunakan command prompt/terminal yang sudah bisa menggunakan perintah “adb” (atau ya kalau belum paham, tinggal arahkan saja ke path lokasi SDK Android dan masuk ke directory sdk/platform-tools/ di dalamnya ada batch file adb)
  • Ketik:
    adb tcpip 5555[enter]
  • setelah itu cek IP Address HP/device Android dengan cara ketik:
    adb shell netcfg
  • Setelah anda mengetahui IP Address dari device/HP anda, dicatat/diingat, kemudian ketikkan perintah dengan format berikut:
    adb connect [IP_Address_device]:5555
    Contoh: adb connect 192.168.1.6:5555[enter]
    nanti akan muncul response:

    “connected to 192.168.1.6:5555” (ini tidak perlu diketik ya..ini akan muncul kalau anda berhasil menghubungkan HP/device android ke laptop via IPaddress secara wireless)

  • Setelah itu lepas kabel usb dari HP/device Android dan laptop/PC anda.
  • Dan selamat menikmati, Android Studio anda sudah bisa melakukan testing ke device/HP Android tanpa terhubung dengan kabel usb.
  • Bila anda sudah selesai melakukan testing aplikasi, anda dapat menutup koneksi wireless dari HP ke laptop anda dengan perintah berikut:
    adb -s [IP_address_device]:5555 usb [enter]

Cukup ribet ya cara di atas? atau masih ada yang gagal mencoba? Move-on dong..mari coba metode ke-dua.

Metode Kedua.

  1. Dari Android Studio kamu, masuk ke Preferences, dengan cara:
    Android Studio: Preferences/Settings->Plugins->Browse Repositories
  2. Install Plugins dengan mengetikkan: “Android WiFi ADB” dan pilih install sesuai petunjuk di layar.
  3. Setelah selesai Install, apabila diminta restart, pilih “restart”
  4. Selamat, plugins Android WiFi ADB berhasil diinstall. Sekarang bagaimana cara menggunakannya ya? Lanjut ke step ke-5.
  5. Mau testing di device Android, tentu jangan lupa nyalakan DEBUGGING mode (pokoknya wajib, masih belum ngerti? bisa bertanya atau cari diinternet, seharusnya developer Android tau langkah mudah mengaktifkan debugging mode ini)
  6.  

    Cari opsi “DEBUG OVER TCP/NETWORK” di dalam Menu Pengaturan/Settings device/HP android kamu>Developer Options.

  7.  

    Pasang kabel USB dari HP ke Laptop/PC, dan pastikan keduanya (PC dan HP) menggunakan jaringan internet yang sama (ntah hotspot ataupun wifi)

  8.  

    Pilih icon ANDROID Wifi ADB di Android Studio.

  9.  

    Setelah itu, device/hp kamu akan terdeteksi di situ, dan siap digunakan untuk testing (jangan lupa cabut kabel USBnya yah pas menggunakan plugins Android Wifi ADB ini)

Selamat mencoba.

 

Advertisements

Seni membaca error log di logcat (DDMS) Android

Ketika saya coba bekerjasama dengan 1 developer Android yang sudah punya produk di PlayStore kemudian komunikasi kami menjadi sedikit missmatch karena ternyata saya baru ngeh kalau developer yang mengajak kerjasama meningkatkan fitur produknya, belum paham membaca error log dan log cat. Dan sering saya dapati komunikasi kami via e-mail dan google docs menjadi tidak harmonis (halah) ketika mengisi waktu kerja proyekan apps android di luar kerjaan kantor, di PKH, Jakarta.

Dan begitu juga pas ngisi workshop, peserta masih bingung membaca error log yang tampil di DDMS yang ter-attached di Eclipse IDE.
Alhasil tempo hari menyisihkan waktu satu jam-an tentang seni membaca error ataupun force close aplikasi dan menemukan bugs dengan cara debugging, error handling ataupun dengan membaca error log.

Mengenai seni trace dan membaca log, perhatikanlah artikel singkat di stackoverflow ini

Mengenai seni dalam mengetahui force close secara langsung dari aplikasi, dapat mencoba cara ini.

Mengenai seni error handling dalam java, bisa baca artikel ini dan khusus Android ada di sini.

Kalau mengecek error di tool DDMS bawaan android SDK/Tools, perlu diketahui, ketika aplikasi berjalan, log yang nampil itu bukan hanya error, jangan dikira kalau ada pesan di log berarti error.
teks warna hijau : seputar tips dan informasi,
teks warna biru : bagian yang diselect, biasanya diisi to-do-list oleh developer,
teks warna orange : ini sebagai peringatan, bisa jadi potensi masalah (namun saat ini belum jadi masalah)
Dan..
teks merah : ini error, dan harus dianalisa masalahnya biar tidak menimbulkan gangguan di aplikasi.

Dan ketika nampak teks warna merah di logcat, sebagai contoh :
02-12 17:50:21.541: E/com.wd.radiodakwahislam.controller.StreamingMediaPlayer(10294): Error updating to newly loaded content.
02-12 17:50:21.541: E/com.wd.radiodakwahislam.controller.StreamingMediaPlayer(10294): java.lang.NullPointerException
02-12 17:50:21.541: E/com.wd.radiodakwahislam.controller.StreamingMediaPlayer(10294): at com.wd.radiodakwahislam.controller.StreamingMediaPlayer.transferBufferToMediaPlayer(StreamingMediaPlayer.java:285)

Di atas, terlihat bahwa ada tulisan : “…(StreamingMediaPlayer.java:285)
artinya, error tersebut terjadi di baris 285 pada class StreamingMediaPlayer.java. So, fokuslah ke class tersebut, dan lihat pada baris 285 terdapat kekeliruan atau tidak (lihat dari editor Eclipse-nya).

Nah, kalau bingung, di awal teks merah tersebut di logcat, copy teks-nya (dengan pilih teks error-nya di logcat, terus tekan ctrl+c), dan buang tanggal dan nama class-nya sehingga yang ter-copy hanya teks error saja : error updating to newly loaded content.
Copy dan paste ke google search di internet browser di PC (bila perlu ditambahkan keyword : Android di akhirnya), terus enter dan lihat di result google, biasanya result 3 besar berisi link stackoverflow, klik salah satunya dan cari apa penyebabnya dari jawaban-jawaban yang ada di stackoverflow.

Pas awal kerja di PKH secara remote, saya langsung ngomong ke team via basecamp, agar coba menerapkan sebuah rules dalam melaporkan bugs dan error dari aplikasi yang dikembangkan kepada teman-teman team yang developer web dan UI designer.

Rules itu berisi :

  • Ketika melaporkan bugs, harap sertakan device apa yang dipakai dan versi OS android-nya.
  • Bila terdapat bugs/masalah UI tolong sertakan screenshotnya, bila masalah fungsional tolong sertakan logcatnya (dengan mengunduh tools berikut) /** saya sertakan link download zipnya yang berisi tool DDMS dan Android SDK beserta doc singkat cara pakainya **/
  • Sebaikny pakai filtering ketika menjalankan logcat di DDMS, jangan semua proses dicantumkan di logcat, demi memudahkan menelusuri masalahnya
  • DDMS bisa filter logcat aplikasi saja, jadi tidak semua log dari proses di device tercatat, caranya dengan masukan nama project di bagian kolom filter. Nama project sesuai yang saya cantumkan ketika saya upload progress (nama project dapat dilihat di file manifest.xml)
  • Kenapa penting bagi developer untuk tahu itu? Supaya gampang mengetahui errornya
    Jangan dikira ketika aplikasi jalan di device developer maka digeneralisir kalau aplikasi tersebut jalan di device SEMUA users. Bahkan yang terjadi di kantor tempat saya kerja, error itu justru sangat kemungkinan besar terjadi mengingat para teman-teman memakai device Android berbagai merek dan ukuran layar dan versi OS.
    Makanya ada conditional yang diterapkan dicode : IF(SDK version < 10) pake codingan A, IF(SDK version > 14) pake codingan B, dll.
  • Oleh karena itu, penting adanya public testing sebelum melepas ke GooglePlay.
    Dan media yang bagus untuk melakukan public testing gratis ya jejaring sosial facebook dll.
  • Beda ukuran layar beda lagi UInya, makanya ketika saya bekerjasama dengan designer UI ada beberapa rules yang harus dipatuhi bersama agar bisa diterapkan di layout dan mencakup ukuran layar low, mid, high, (ponsel dr ukuran kecil sampe besar) extra (tablet 7″ atau HD) dan double extra (tablet 10″ atau yg full HD). Untuk guidelines buat para designer UI Android, bisa patuhi prinsip-prinsip designnya di sini dan lengkapnya ada di sini untuk setiap bagian design-nya.

Sekian dan terima kasih 😀