Berbagi tips mungkin bagi yang sedang mengembangkan aplikasi android dengan fitur networking / terhubung dengan internet. Mungkin akan mengalami error dengan pesan seperti ini
fatal exception android.os.networkOnMainThreadExceptionBerdasarkan informasi yang saya dapatkan bahwa error ini biasanya terjadi pada android versi 3.0 (honeycomb) ke atas. Pada aplikasi/activity yang memiliki user interface, disarankan untuk menghindari adanya komunikasi yang terus-menerus ke network/file. Karena itu pada android versi 3.0 memiliki fitur StrictMode. StrictMode akan mengatur kebijakan agar activity tidak melakukan proses yang tidak perlu di background. Sehingga jika anda memiliki aplikasi/activity yang tidak menyertakan StrictMode, maka error seperti diatas akan muncul. Hal ini sebenarnya dapat diatasi dengan mengganti target min sdk menjadi turun, misal 7. Ketika dicompile ulang, maka aplikasi anda berjalan sebagaimana semestinya. Namun caranya ini tidak disarankan oleh developer yang sudah berpengalaman. Caranya dengan menambahkan
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}




Komentar (2)