안드로이드앱에서 사진 검색해서 다운로드 받을 수 있는 웹서비스를 찾다가 Flickr을 사용해보았습니다.
앞으로 4개의 포스팅을 통해 flickr API를 사용하여 안드로이드 앱에서 사진 검색을 구현한 과정을 다룹니다.
Flickr API 사용 해보기
http://webnautes.tistory.com/459
Android에서 REST 요청 후 JSON 응답 받기
http://webnautes.tistory.com/462
Android에서 JSON 파싱하여 ListView에 출력
http://webnautes.tistory.com/471
ListView 아이템 클릭하면 이미지 다운로드해서 보여주기
http://webnautes.tistory.com/472
flickr API( https://www.flickr.com/services/api/ )에서는 세가지 요청 형식을 제공하는데 REST, XML-RPC, SOAP입니다.
이중 제일 간단해 보이는 REST 요청을 사용하기로 했습니다.
웹브라우저의 주소창에 요청 주소를 입력해주면 결과값을 바로 확인해볼 수 있습니다.
최초 작성 - 2014.06.29
최종 업데이트 - 2017.12.21
1. Flickr API KEY 발급받기 2. REST 요청 테스트 3. JSON 포맷 구조 |
1. Flickr API KEY 발급받기
1. Flickr API를 사용하기 위해서는 야후 계정이 있어야 합니다.
https://www.flickr.com/services/apps/create/apply 에 접속하여 로그인 합니다.
계정이 없으면 가입을 해서 진행해야 합니다.
2. 테스트 해보기 위해서 필요하므로 비상업용 키 신청을 선택했습니다.
3. App 이름과 App에 대한 설명을 적어 준 후, 아래쪽에 두 개 있는 체크박스를 모두 체크 후 등록을 클릭합니다.
4. 발급받은 API 키를 복사해둡니다.
2. REST 요청 테스트
다음 REST 요청 주소를 웹브라우저의 주소창에 입력하여 접속해봅니다.
Flickr_API_KEY 부분은 발급받은 API 키로 대체합니다.
text 다음에 입력한 cat을 검색하게 됩니다.
응답 포맷으로(format) json을 지정했습니다.
https://secure.flickr.com/services/rest/?method=flickr.photos.search&api_key=Flickr_API_KEY&text='cat'&safe_search=1&content_type=1&sort=interestingness-desc&per_page=5&format=json |
웹페이지에 JSON 응답이 출력됩니다.
3. JSON 포맷 구조
JSON 포맷으로 받은 응답으로부터 원하는 정보들을 파싱하려면 JSONArray와 JSONObject를 구별할 줄 알아야합니다.
괄호 모양의 차이에 유의하여 다음 4가지 중 어떤 것인지 파악하며 원하는 정보를 끄집어 내면됩니다.
JSONArray | [ “apple”, “orange”, “banana”,”status”], | 여러 개의 아이템을 하나로 구성 시 사용 |
JSONObject | {"name": "apple", "color":"red", weight:”500”} | 하나의 아이템에 대한 속성들을 기술 시 사용 |
JSONArray + JSONObject | {“total”:”3”, “fruit”:[{"name": "apple", "color":"red", weight:”200”}, {"name": “orange", “color":"orange", weight:”130”},{"name": "”:”banana", "color":"yellow", weight:”500”}], “status”:”ok”} | JSONObject 내부에 JSONArray 사용 |
[{"name": "apple", "color":"red", weight:”200”}, {"name": “orange", “color":"orange", weight:”130”},{"name": "”:”banana", "color":"yellow", weight:”500”}] | JSONArray 내부에 JSONObject 사용 |
전체 JSON 응답을 보고 JSONArray와 JSONObject 부분을 구분할 줄 알면 파싱하는 것은 쉽습니다.
프로그래밍적으로 파싱하는 방법은 이후 포스팅에서 다루도록 하겠습니다.
'Android > 사진검색 안드로이드앱 구현(JSON 가져오기)' 카테고리의 다른 글
사진 검색 안드로이드 앱 구현 - 4. ListView 아이템 클릭하면 이미지 다운로드해서 보여주기 (10) | 2017.12.22 |
---|---|
사진 검색 안드로이드 앱 구현 - 3. Android에서 JSON 파싱하여 ListView에 출력 (25) | 2017.12.22 |
사진 검색 안드로이드 앱 구현 - 2. Android에서 REST 요청 후 JSON 응답 받기 (4) | 2017.12.22 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!