일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 리소스 자동화
- MVP
- 안드로이드
- JSON
- 디버그
- RX
- 안드로이드 리소스
- 분류
- Kulle
- retrolambda
- Connectable Observable Operators
- ReactiveX
- 성공
- rxandroid
- parser
- 백준
- Observable
- Android Support Library
- AndroidWeek
- Season3
- gradle
- RXjava
- DIABLO4
- 9498
- android resource automation
- logansquare
- Android
- 구현
- android weekly
- Today
- Total
안드로이드 개발 팁 블로그
Retrofit2 + okhttp3 + Rxandroid 사용법 본문
OkHttp3에서 달라진 쿠키스토어 사용방법은 이후에 작성된 아래 포스트를 참고해 주세요.
Retrofit과 OkHttp 는 Square社(https://square.github.io/)에서 만든 오픈라이브러리 입니다.
Retrofit : REST통신을 위한 클라이언트 라이브러리
OkHttp : HTTP & HTTP/2 통신 클라이언트 라이브러리
Rxandroid : 안드로이드에서 Observer 패턴, Iterator 패턴을 사용 할 수 있게 하는 라이브러리
이 글을 아래와 같은 디펜던시를 사용합니다.
dependencies
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta3'
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta3'
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0-beta3'
compile 'com.squareup.okhttp3:okhttp:3.0.1'
compile 'com.squareup.okhttp3:okhttp-urlconnection:3.0.1'
compile 'com.squareup.okhttp3:logging-interceptor:3.0.1'
compile 'com.google.code.gson:gson:2.5'
1.interface 만들기
REST API에 맞는 interface 파일을 만듭니다.
본 예제는 REST 통신 후 결과 값을 서버에서 Json Type으로 리턴해주는 것을 기본으로 설명합니다.
AuthModel은 getter, setter로 이루어진 Bean객체입니다. Json의 구조와 동일하게 구현되어 있어야 자동으로 파싱이 가능합니다.
auth.json
1 2 3 4 5 6 7 8 | { "email": "leeyc09@gmail.com", "nick_name": "하하하하", "profile_modified": "", "profile_thumb": "", "storage_limit": 10737418240, "storage_used": 71243214 } | cs |
parcelable 상속은 선택입니다.
2. RestfulAdapter 만들기
위에서 만든 interface를 사용할 수 있도록 Retrofit에 연결합니다.
쿠키관리하기
JavaNetCookieJar를 사용하기 위해서는 디펜던시에 'com.squareup.okhttp3:okhttp-urlconnection:3.0.1'을 추가해야 합니다.
OkHttp3에서 달라진 쿠키스토어 사용방법은 이후에 작성된 아래 포스트를 참고해 주세요.
http://tiii.tistory.com/13
'Android Tip' 카테고리의 다른 글
Retrofit2 + okhttp3 Cookie 관리하기 (1) | 2016.02.05 |
---|---|
RecyclerView에 ItemClick,ItemLongClick 적용하기 (1) | 2016.02.03 |
retrofit 1.9 -> 2.0, okhttp2 -> okhttp3 라이브러리 변경 삽질기. feat.Fresco (0) | 2016.01.15 |
Multiple APK 적용하기 (1) | 2016.01.14 |
Android Studio에 Retrolambda 적용하기 (2) | 2015.12.01 |