안녕하세요. 열린데이터광장입니다.
초급 개발자를 위한 API 데이터 활용편입니다.
모든 소스 파일은 열린데이터광장 홈페이지 접속 > 메뉴 > 이용안내 > OPEN API 소개 > API 소스 zip 파일을 다운 받아 개발 시 참고해 주세요.
① 먼저 데이터 활용을 위해 서울시 열린데이터광장(data.seoul.go.kr)을 접속합니다.
② 샘플용 데이터는 ‘서울시 권역별 실시간 대기환경 현황’ 데이터셋을 활용할 예정입니다.
입력 후 검색합니다.
데이터셋을 클릭해서 들어가 보면, 데이터에 대한 기본적인 정보들과 데이터셋에 대한 설명을 볼 수 있습니다.
미리보기를 통해 데이터를 Sheet로 제공하는 방식과 OpenAPI로 제공하는 방식이 있습니다.
① Sheet 데이터를 간단히 조회해볼 수 있으며, 내려받기를 통해 데이터들을 csv, json 형식으로 데이터를 확인할 수 있습니다.
② OpenAPI 데이터는 다양한 환경에서 데이터를 호출할 수 있습니다.
상세한 이용안내, 인증키 신청 방법, 명세서 등도 함께 확인할 수 있으며, 다양한 데이터를 더 많이 활용하기 위해서는 인증키를 신청해서 발급 받아야 합니다.
① 데이터 호출 시 필수적으로 필요한 요청인자는 인증키, 파일타입, 서비스명, 시작위치, 종료위치 5가지가 있고, 호출 시 선택적으로 요청할 수 있는 인자는 별도로 적혀있습니다.
선택 인자 없이, 필수 인자로만 조회를 하게 되면 전체 row가 다 출력되게 됩니다. 개발하는 데이터의 특성에 따라 전체를 출력할지, 일부를 출력할지 선택해서 개발해야 합니다.
② 데이터 호출 완료 후, 공통적으로 출력되는 인자가 적혀있습니다. 개발 시 출력값으로 데이터를 컨트롤할 수 있기 때문에 잘 숙지하고 있어야 합니다.
------------------------------------------------------------------------
OPEN API를 JavaScript으로 활용하는 가이드를 설명 드리겠습니다.
① ‘서울시 권역별 실시간 대기환경 현황’ 데이터셋을 이용해 OpenAPI를 활용해 볼 수 있는 url입니다.
샘플 페이지를 확인하기 위해 소스를 메모장 혹은 Notepad++을 통해 소스를 열어봅니다.
①,② JavaScript로 작성된 것을 확인할 수 있으며, 입력값은 searchValue에 저장하여 가지고 온 다음, ①번에서 받아온 검색어를 ②번 입력값을 저장합니다.
③ 웹 통신을 하기 위해 변수를 설정합니다.
① ‘서울시 권역별 실시간 대기환경 현황’ 데이터셋을 이용해 OpenAPI를 활용해 볼 수 있는 페이지입니다.
서울시 25개 자치구를 한글로 검색합니다.
② ‘중구'로 검색하면 기준 날짜, 권역명, 측정소명, 대기환경 상태를 확인할 수 있는 결과값이 나오게 됩니다.
③ 조회에 대한 예외처리 등을 합니다. (공백 시, 틀린 입력값, 해당없음 등)
① 샘플 페이지를 확인하기 위해 소스를 메모장 혹은 Notepad++을 통해 소스를 열어봅니다.
①,② JavaScript로 작성된 것을 확인할 수 있으며, 입력값은 searchValue에 저장하여 가지고 온 다음, ①에서 받아온 검색어를 ② 입력값을 저장합니다.
③ 웹 통신을 하기 위해 변수를 설정합니다.
④ 열린데이터광장에서 받은 개인 인증키와 OpenAPI 호출 url을 입력합니다.
① XML 데이터를 파싱하기 위해 변수를 선언합니다. 이 때, xmlDoc를 콘솔로 찍은 후 개발자도구(웹브라우저 F12)를 열어 콘솔을 확인해봅니다.
② 검색창에 ‘중구'를 검색하여 정상적으로 데이터를 받는지 확인할 수 있습니다.
③ xmlDoc를 통해 받아온 요소 중 Tag 네임 배열 0번째 데이터를 받아옵니다.(샘플에서는 1개의 결과값만 조회하기 때문에 0번 배열을 고정했지만, 결과값이 여러 개일 경우 배열에 대한 처리를 추가해야 합니다.)
④ innerHTML을 통해 화면 결과값에 출력할 문구를 설정해줍니다.
이후 여기서 추가적인 개발을 진행할 수 있습니다.
추가적인 개발 방법으로는
1. 디자인 작업을 통해 UI를 구성합니다.
2. 데이터를 DB에 저장해 필요한 작업을 할 수 있습니다.
3. 2에서 저장한 데이터를 기반으로 다른 데이터셋과 JOIN을 해서 추가적인 데이터 가공을 할 수 있습니다.
4. ajax 통신, jQuery를 활용해 더 쉽고 빠르게 개발할 수 있습니다.
① ‘서울시 권역별 실시간 대기환경 현황’ 데이터셋을 이용해 OpenAPI를 활용해 볼 수 있는 페이지입니다.
서울시 25개 자치구를 한글로 검색합니다.
② ‘중구'로 검색하면 기준 날짜, 권역명, 측정소명, 대기환경 상태를 확인할 수 있는 결과값이 나오게 됩니다.
③ 조회에 대한 예외처리 등을 합니다. (공백 시, 틀린 입력값, 해당없음 등)
-----------------------------------------------------------------------
OPEN API를 Java로 활용하는 가이드를 설명 드리겠습니다.
① Java Class 파일에서 import를 해줍니다.
② 자바의 StringBuilder를 통해 호출할 OpenAPI를 저장합니다.
상위 5가지는 호출 시 필수적으로 입력해야 하는 값입니다.(OpenAPI 요청인자 필수값 참고)
하위 2가지는 호출 시 선택적으로 입력하는 값입니다. (OpenAPI 요청인자 선택값 참고)
권역명 조회 안 할 시 공백 혹은 %20으로 넣어서 조회합니다.
① 자바 DocumentBuilder를 이용해 urlBuilder에 저장해 둔 OpenAPI를 파싱합니다.
파싱한 데이터는 dDocument 변수에 저장합니다.
② dDocument에 저장된 Tag이름 중 측정일시(MSRDT) 를 콘솔로 찍어 원하는 결과값이 나오는 것을 확인합니다.
이후 여기서 추가적인 개발을 진행할 수 있습니다.
추가적인 개발 방법으로는
1. 데이터를 DB에 저장해 필요한 작업을 할 수 있습니다.
2. 1에서 저장한 데이터를 기반으로 다른 데이터셋과 JOIN을 해서 추가적인 데이터 가공을 할 수 있습니다.
4. ajax 통신, jQuery를 활용해 더 쉽고 빠르게 개발할 수 있습니다.
-----------------------------------------------------------------------
이제 구글 플레이스토어에 개발한 안드로이드 앱을 등록하는 방법에 대해 설명 드리겠습니다.
구글스토어 등록 방법
구글 플레이스토어에 개발한 안드로이드 앱을 등록하려면 구글 계정 생성을 먼저 해야 합니다.
개인 정보를 입력 후 개인 구글 계정을 만든 뒤, 개발자 계정으로 전환 신청을 합니다.
단, 모든 정보를 입력하고 마지막에 25달러(2024년 12월 기준)를 일회성으로 지불해야 합니다.
결제를 위한 결제 프로필을 만들고 결제 후 공개 개발자 프로필로 전환합니다.
참고: https://documentation.swing2app.co.kr/knowledgebase/playstore/google-developer
내 정보 및 앱에 대한 정보를 선택 입력합니다.
(신중히 잘 선택하고 작성해야 구글 검색 알고리즘을 잘 탈 수 있다고 합니다. 내부 로직에 대해서는 비공개)
마지막으로 25달러를 결제한 뒤, 개발자 계정 전환됨을 확인합니다.
그 후 구글 플레이 스토어에서 개발한 앱을 등록합니다.
-----------------------------------------------------------------------
다음은 앱스토어에 개발한 앱을 등록하는 방법에 대해 설명드리겠습니다.
앱스토어 등록 방법
앱스토어에 개발한 iOS앱을 등록하려면 애플 계정 생성을 먼저 해야 합니다.
개인 정보를 입력 후 개인 애플 계정을 만든 뒤, Appple developer사이트에 로그인하여 가입합니다.
Apple Developer 가입 완료 및 구매 완료를 하고 나서, 일반적으로 48시간 정도 이후 승인이 완료됩니다.
모든 정보를 입력하고 매년 129,000원(2024년 12월 기준)을 지불해야 합니다. 자동결제가 되지 않으니 이용기간을 확인해서 결제하시기 바랍니다.
앱스토어 등록 준비사항 간단 정리입니다.
1번. 앱이름 및 앱 아이콘
2번. 부제
3번. 키워드
4번. 앱 설명
5번. 스크린샷 이미지 - 아이폰 3종[필수], 아이패드1종[선택]
6번. 로그인 계정
7번. 개인정보 처리방침 링크 등이 있습니다.
감사합니다.