데이터를 받기 위한 코드
public Post download() {
try {
URL url = new URL("<https://jsonplaceholder.typicode.com/posts/1>");
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
BufferedReader br =
new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuffer sb = new StringBuffer();
String input = null;
while ((input = br.readLine()) != null) {
sb.append(input);
}
Gson gson = new Gson();
Post post = gson.fromJson(sb.toString(), Post.class);
return post;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public void initLr() {
btnDownload.setOnClickListener(V -> {
download();
}
해당 함수를 호출하면 오류가 난다.. (NetworkOnMainThreadException)
무거운 작업이기 때문에 다운로드가 안되는 것
UI스레드로는 무거운 이벤트를 처리할 수 없음
그래서 새로운 스레드에서 실행시킨다