brunch

You can make anything
by writing

C.S.Lewis

폰갭으로 쉽게 어플 만들자. 외부 API란

외부 API를 왜 활용해야 되는지 알아보자

폰갭 어플은 50% 외부 API 50%

처음 진행할 때부터 외부 API를 이야기하였습니다. 내부 API는 진동 등등 다양한 디바이스 제어 기능들을 의미한다면 외부 API는 필수 요소입니다.

위치 기반 어플은 구글이나 네이버 다음 지도를 활용해야 되며, 번역의 경우 BING이나 GOOGLE 번역기를 활용해야 합니다.


그리고 PUSH라는 우리가 어플을 설치하면 메시지 전송과 같은 기능은 구글 메시지 클라우드를 이용해야 합니다.


작은 것 하나하나 다 어플에 저장하고 있는 것이 아니며 서비스 회사의 API를 통해 사용하게 됩니다.


어플 개발은 얼마큼 자원을 많이 이용할 수 있는가가 중요한 부분이 있습니다. 자신이 있는 위치는 GPS 좌표를 활용하지만 지도상에 나타내야 사람이 위치를 알 수 있기 때문에 지도 서비스를 활용하게 되는 것이고 제품을 검색했다면 네이버나 다음 블로그에 얼마큼 많이 리뷰되어 있는지까지 모두 활용할 수 있습니다.

그것이 생각보다 쉽습니다.


예 1) 구글 메시지는 어떻게 동작하는 걸까?

구글 메시지는 순수하게 구글 메시지 서버를 활용합니다. GCM이라고 하는데 먼저 기기의 REG_ID 값을 검출합니다. 그것을 구글에 등록하면 메시지를 받을 준비가 되는 겁니다.


그리고 서버 키를 활용해서 서버에서 GCM를 발송하면 문자 메시지 같이 발송됩니다. 한 번에 1000명씩 발송 가능합니다.


흐름은 위 그림에 설명했습니다.

여기서 내부 API를 활용해서 DEVICE REG_ID값을 추출할 수 있습니다. 그리고 AJAX로 구글 서버에 등록하게 되면 어플이 설치된 기기가 구글에 등록되게 됩니다.


그다음 백오피스 프로그램에서 메시지를 전송만 하면 됩니다. 그 기준은 전화번호가 아니고 DEVICE REG_ID를 배열로 처리해서 구글에 JSON형태로 넘기면 자동으로 발송해 줍니다.


비용이 별도로 들어 가는 것이 아닙니다. 추후 예제로 하나씩 해보도록 하겠습니다.


예제 2) 번역

번역 서비스는 구글과 BING 등 서비스들을 활용할 수 있습니다.

번역 서비스도 마찬가지인데 번역할 문장과 언어를 보내 주면 번역 후 넘겨줍니다.

이과정은 모두 JAVASCRIPT로 가능합니다. 폰갭은 사용언어를 JAVASCRIPT 를 활용한다는 것 빼고는 네이티브와 같은 원리로 동작합니다.


 외부 API를 50% 이상 사용하게 됩니다. 외부 API를 잘 활용하면 어플 개발이 그만큼 쉬워집니다. 불가능할 것 같은 기능들을 넣을 수 있고 지도 서비스 같은 경우 거의 서버 자원 없이 API로만 구현이 가능합니다.


실제 서울시 공공 데이터 같은 경우 서울시의 구별로 화장실 위치를 제공해 주고 WIFI위치를 제공해 주기 때문에 서비스에 넣기도 쉽고 그 효과도 좋은 데이터 들입니다. 어플 개발은 이런 자원을 사용자가 쉽게 이용할 수 있도록 해 주는 것도 중요한 기능 중에 하나입니다.


폰갭 다음 시간부터는 실제 제작을 해볼 겁니다. 쉽게 편하게 한번 만들어 봤으면 합니다. 강좌나 기술 지원이 필요하신 분들은 연락 주세요.




매거진의 이전글 폰갭으로 쉽게 어플 만들자. 폰갭의 이해
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari