반응형
https://soo0100.tistory.com/1710
안드로이드 HttpURLConnection 사용하여 네트워크 연결
자바에서 제공하는 HttpURLConnection 클래스를 사용하여 특정사이트의 값을 GET 방식으로 가져오는 예제이다. HttpURLConnection 는 HTTP/1.1 통신방식으로 하나의 연결당 하나의 요청과 응답만 허용하기에
soo0100.tistory.com
지난 시간 HttpURLConnection 를 이용하여 네트워크 태크 정보를 읽어왔다.
하지만 1개의 서버와 클라이언트가 매치가 되어야 하는 문제점이 있어왔기에 2015년 표준으로 재정된 HTTP2.0 방식을 사용하는 것을 추천하고 있다.
오늘은 HTTP 2.0 방식이 적용된 소스 코드로, 지난 시간과 동일한 태그 값을 불러오는 내용이다.
1. 구현전 manifests 파일에 네트워크 사용을 위해서 Internet 권한을 설정한다.
<uses-permission android:name="android.permission.INTERNET"/>
2. 모듈단 gradle 파일에 외부 라이브러리 사용을 위해서 하기 코드를 추가한다.
implementation 'com.squareup.okhttp3:okhttp:3.8.1'
3. 소스 구현
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new HttpAsynTask().execute("https://goo.gl/eIXu9l");
}
private static class HttpAsynTask extends AsyncTask<String, Void, String>{
//Http/2.0
OkHttpClient client = new OkHttpClient();
@Override
protected String doInBackground(String... strings) {
String result = null;
String url = strings[0];
try {
Request request = new Request.Builder()
.url(url).build();
Response response = client.newCall(request).execute();
result = response.body().string();
} catch (IOException e) {
e.printStackTrace();
}
return result;
}
protected void onPostExecute(String s) {
super.onPreExecute();
if(s != null){
Log.d("NET_TEST", s);
}
}
}
}
위 코드를 적용하면, 서버의 태그 내용을 가져온다.
테스트 서버는 "오준석의 될때까지 안드로이드" Json 테스트 파일 내용이다.
감사합니다.

반응형
'앱 만들기 > 안드로이드 study' 카테고리의 다른 글
android:exported 에러 수정하기 (4) | 2022.01.28 |
---|---|
스크롤 뷰 만들기 와 주의사항 (4) | 2022.01.27 |
안드로이드 HttpURLConnection 사용하여 네트워크 연결 (3) | 2022.01.22 |
안드로이드 클릭리스너를 구현하는 방법 (5) | 2021.10.27 |
인텐트를 이용해 값 전달하기. (2) | 2021.10.14 |
댓글
나도처음이야님의
글이 좋았다면 응원을 보내주세요!
이 글이 도움이 됐다면, 응원 댓글을 써보세요. 블로거에게 지급되는 응원금은 새로운 창작의 큰 힘이 됩니다.
응원 댓글은 만 14세 이상 카카오계정 이용자라면 누구나 편하게 작성, 결제할 수 있습니다.
글 본문, 댓글 목록 등을 통해 응원한 팬과 응원 댓글, 응원금을 강조해 보여줍니다.
응원금은 앱에서는 인앱결제, 웹에서는 카카오페이 및 신용카드로 결제할 수 있습니다.