일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인트로 애니메이션
- 수 정렬하기3
- 백준 1920
- ViewBinding Fragment
- 백준 균형잡힌 세상
- Fragment 이동
- 공공데이터 retrofit
- 백준 통계
- 백준
- 백준 암호제작
- 백준 요세푸스 문제0
- 안드로이드 인트로 화면
- 안드로이드 인트로 코틀린
- 모각코
- 백준 11650
- 백준 4949
- 공공데이터 kotlin
- kotlin retrofit
- kotlin fragment
- 코틀린 미세먼지
- 백준 11866
- 백준 1837
- 안드로이드 공공데이터
- 코틀린 공공데이터
- 안드로이드 미세먼지
- 나이순 정렬
- 좌표 정렬하기
- 백준 랜선 자르기
- 좌표 정렬하기2
- 백준 11651
- Today
- Total
개발 지식 공유, 복습
Retrofit2 - 공공데이터(1) 본문
앱을 개발하다 보면 API를 이용할 필요가 생길 것이다. 그럴 때 Retrofit을 이용하면 편리? 할 것 같다.
build.gradle파일에서 다음 3가지를 추가해주자.
dependencies {
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.google.code.gson:gson:2.8.6'
}
Manifest파일에는 이 권한을 추가해주자.
<uses-permission android:name="android.permission.INTERNET"/>
나는 공공데이터 포탈에서 미세먼지 관련 데이터를 얻고자했다. 간단하게 api 신청하는 법은 다음과 같다.
먼저 공공데이터 포털에 들어간다.
https://www.data.go.kr/index.do
들어가면 검색란이 있는데 여기서 본인이 얻고자하는 데이터 이름을 입력하고 오픈 API 건으로 이동한다.
저 목록들 중 얻고 싶은 데이터에 '활용신청'을 누른다.
여기서 간단히 양식을 작성해주고 신청하면....
이제 해당 API를 사용할 수 있다!
코드를 작성하기 전에 먼저 결과를 어떻게 받는지 궁금할 것이다.
그럴 경우 문서를 다운받고 원하는 요청 메시지란을 보면 링크가 있다. 거기서 '서비스 키' 부분을 본인이 부여받은 개인 키를 대입하고 검색하면 된다! (이때는 일반 인증키(Encoding)를 넣어주면 된다.)
여기서 데이터 형식을 xml 아니면 json일텐데 나는 json이 더 편해서 이렇게 설정했다. (링크에 xml을 json으로 변경했다. 모든 api가 json을 제공하진 않으니 유의하자.)
이제 코드로 가보자.
먼저 java코드를 json으로 변환해주는 gson과 사용할 retrofit을 선언한다.
baseUrl에는 End Point에서 첫번째 부분만 가져오면 된다고 생각하면 편할 것 같다. 그 뒷부분은 메서드마다 1개씩 추가할 수 있으므로 더 효율적이라고 생각!
헉헉....
여기까지 쓰느라 너무 길었다. 나머진 2편에서 쓰도록 하겠다.
'안드로이드(Kotlin)' 카테고리의 다른 글
Retrofit2 - 공공데이터(2) (0) | 2022.05.15 |
---|---|
Fragment 이동 - Kotlin (0) | 2022.01.28 |
인트로 화면(Splash) - Kotlin (0) | 2022.01.28 |