-
[안드로이드 스튜디오] JSON을 HTTP URL로 읽어오기 (JAVA/자바)안드로이드 공부 2022. 6. 25. 00:06
안녕하세요~ 코딩하는 코알못 코메인입니다.
안드로이드에서 JSON을 HTTP URL로 읽어오는 방법에 대해 알아보겠다.
이번 게시글은 JSON을 HTTP URL로 안드로이드 스튜디오에서 읽는 것을 다룬다.
JSON에 대한 기본적인 정보는 해당 게시글에서 확인 할 수 있다.
https://comain.tistory.com/325
JSON URL 생성하기
JSON을 URL로 만드는 방법은 github gist를 활용해 만들 것이다. github gist는 github 아이디를 필요로 하기 때문에 없는 사람은 만들어 두자. github 아이디 생성하는 방법을 모르는 사람은 구글에서 검색해보자.(필자가 해당 내용을 게시하고, 까먹지 않는 다면 여기에 링크를 달겠다. 까먹을 수도 있으니 구글에 검색하거나 필자 블로그에서 검색해서 확인 해 보자. 해당 내용을 다루는 게시글을 언제 올릴지는 우리집 강아지도 모른다.)
github 아이디가 준비 되었다면 해당 주소로 이동하자.
이동하면 해당 창이 나올 것이다.
Filename including extension...이라 적혀있는 칸에 제목을 적어주면 되는데, OOO.json 형식으로 적어주면 된다.
그리고 아래 1이 적힌 칸에는 json에 들어갈 코드를 적어주면 된다.
필자가 작성한 것을 첨부했으니 참고하자.
다 작성했으면 하단 우측에 초록색버튼인 Create secret gist를 클릭하자.
클릭하면 해당 창이 나올 것인데
이름 오른쪽 끝에 위치한 Raw를 클릭하면 json이 들어간 웹사이트로 이동 할 것이다.
이렇게 json url은 생성이 끝이 났으니 그 url 주소로 json을 안드로이드 스튜디오에 가져와보자.
코드
우선 json 코드
{ "Movies" : [ { "name" : "범죄도시2", "age" : "15세 관람가", "category" : "범죄/액션" }, { "name" : "마녀2", "age" : "15세 관람가", "category" : "액션" }, { "name" : "공기살인", "age" : "12세 관람가", "category" : "드라마" }, { "name" : "기적", "age" : "12세 관람가", "category" : "드라마" } ] }
json은 해당 코드의 방식으로 적혀야 한다. 모르겠으면 초반에 언급한 json 설명 게시글에 보면 나와 있다. 필자는 최근에 본 영화들의 정보를 기준으로 작성했다.
Activity 코드
package com.example.json_http_example; import android.util.Log; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class HttpConnector extends Thread{ @Override public void run(){ try{ URL url = new URL("URL 주소를 입력"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); if(conn != null){ conn.setConnectTimeout(10000); conn.setRequestMethod("GET"); int resCode = conn.getResponseCode(); if(resCode == HttpURLConnection.HTTP_OK){ BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line = null; while(true){ line = reader.readLine(); Log.d("JsonParsing", "line : " + line); if(line == null){ break; } } reader.close(); } conn.disconnect(); } }catch (Exception e){ } } }
HttpConnector메소드가 json이 들어간 url을 읽어오는 클래스이다. 클래스 구조 형식을 보면 알겠지만 쓰레드로 만들었다.
해당 코드에서 Log.d부분은 로그를 확인하기 위한 코드이기에 넣을 필요는 없고, 잘 적용되었는지 로그 확인을 위해 필자가 넣은 것일 뿐이다.
URL 주소를 입력 부분에 ""를 포함한 주소를 적으면 된다.
URL url = new URL("https://gist.githubusercontent.com/goodunkuck/41464e0fba61d3c5fa891171c467fde2/raw/ea94decf20215773fd7b72b6606c54ea3c669971/Test.json");
이렇게.
해당 코드를 실행해보자.
실행
파일을 잘 읽어 온 것을 확인 했다.
Json URL을 만들고, 읽어오는 것을 해보았습니다. 보시는 분들에게 도움이 되셧으면 좋겠고, 만약 보시고 틀린 점이나 추가로 정보를 주고 싶은 분이 있다면 거리낌 없이 댓글로 남겨주시면 감사히 새겨 듣겠습니다.
'안드로이드 공부' 카테고리의 다른 글
[안드로이드 스튜디오] TextWatcher (JAVA/자바) (0) 2022.12.06 [안드로이드 스튜디오] button 색상 변경 안 될 때 (0) 2022.08.09 [안드로이드 스튜디오] JSON 파일 읽어오기 (JAVA/자바) (0) 2022.06.22 [안드로이드 스튜디오] 텍스트 자동 크기(AutoTextSize) 조절하기 (JAVA/자바) (0) 2022.06.04 [안드로이드 스튜디오] 버튼에 기능 넣기 OnClick() (JAVA/자바) (0) 2022.06.02