본문 바로가기

Develop/Android

Caused by: android.os.NetworkOnMainThreadException

Caused by: android.os.NetworkOnMainThreadException


이것 저것 서버와 통신하는 TEST 를 하다가 에러가 딱 나와서 검색해보니

Main Thread 에서 Network IO도 같이 다뤄주게 되면, UI 를 다루는 Main Thread 에서 운나쁘면 죽을수도있다고 추천하지는 않는다. 만약에 그래도 쓸거면 아래의 코드를 Main Activity 의 onCreate() 안에 추가해준다.


        if (android.os.Build.VERSION.SDK_INT > 9) {

            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();


            StrictMode.setThreadPolicy(policy);

        }


좋은 해결방안으로는 AsyncTask 또는 Thread 를 사용할 것을 권장한다.

Thread 로 해결.