원인 Activity 가 실행될때 바로 HTTP 통신을 하는 경우에 발생


대처법 Thread() 를 사용하면 된다.


기존코드

 


RequestBody body = new FormBody.Builder()
.add("Token", userToken)
.add("Phone_Number", phoneNumber)
.build();

//request
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
try {
//Log.d(TAG,"실행" + token);
client.newCall(request).execute();
} catch (IOException e) {
e.printStackTrace();
}


Thread()사용

 new Thread() {

public void run() {

RequestBody body = new FormBody.Builder()
.add("Token", userToken)
.add("Phone_Number", phoneNumber)
.build();

//request
Request request = new Request.Builder()
.url(url)
.post(body)
.build();
try {
//Log.d(TAG,"실행" + token);
client.newCall(request).execute();
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();

신고

'Android' 카테고리의 다른 글

NetworkOnMainThreadException 에러 원인과 대처법  (0) 2017.11.06

+ Recent posts

티스토리 툴바