안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요? 저번에도 글 올렸는데, 명쾌한 답변 해주신 분이 계셔서 잘 넘어갔습니다.
사실 전 기본서를 가지고 있고, 읽으면서 따라해보고 있는데 기본서 사라고 말씀 하시는 분들이 간혹 계시더라고요.. 기본서에 자세히 안 나와서 여쭤본 거였는데..
근데 이번에 난국에 부딪쳤습니다.
제가 간단한 날씨 정보를 가져와야 하는데 네이버에 검색 해보니 기상청 DB는 열려 있지 않다고 하더라고요. 무료도 있긴 하지만 언제 끊길지 몰라서 안 좋다고 하시던데...
서핑 중에 구글 XML를 발견했습니다!
http://www.google.com/ig/api?hi?ko&weather=gyeonggi 인데요.
이 걸 어떻게 DB화 해서 가지고 오는지 궁금합니다.
그냥 표시할 XML에 냅다 복사 붙여넣기 하면 되는............일은 없을테고.
원리와 하는 법좀 가르쳐 주셨으면 합니다.
부탁드립니다(_ _)
기본서엔 안 나와 있고.. 외부 DB 연동 하는 법 또한 나와 있지 않거나, 너무 설명이 간결해서 기본을 이해하지 못했습니다.
2012.08.11 03:08:41
java 네트워크 프로그래밍 관련해서 공부하세요.
http 통신하는 부분은 그 중에서 기초적인 부분입니다.
키워드를 알았으면 찾아서 공부해보셔야죠^^;
답답하시겠지만 한스탭 한스탭 밟아가신다고 생각하시면 됩니다.
정답만 달랑 알게 되면 나중에 다른 부분에 응용하기도 힘들고 자기 자신도 그 부분에 대한 이해도 제대로 못하고 넘어가는 경우가 많구요.
2012.08.11 07:03:02
1) 구글의 날씨 피드가 있긴 합니다만, 역시 공식적인 피드는 아닙니다. 언제 바뀌거나 끊길 지 모릅니다. 테스트용이 아니라 서비스를 하시려면 유료 날씨 피드를 찾아보는 편이 좋겠습니다. (최소한 공식적인 언급이라도 있어야 좋겠군요.)
2) HTTP로 데이터를 받아오는 소스를 찾아보세요. XML이라면 텍스트로 받아와 String 변수에 보관하세요.
3) XML 안에 들어있는 데이터를 읽어오는 방법을 찾아보세요. DOM, SAX, XPP 등의 방법을 사용하면 될겁니다. 아니면 (저 개인적으로 선호하는) XPath도 좋습니다.
이렇게 데이터를 받아오면 이제 화면에 보여주면 되겠죠?
2) HTTP로 데이터를 받아오는 소스를 찾아보세요. XML이라면 텍스트로 받아와 String 변수에 보관하세요.
3) XML 안에 들어있는 데이터를 읽어오는 방법을 찾아보세요. DOM, SAX, XPP 등의 방법을 사용하면 될겁니다. 아니면 (저 개인적으로 선호하는) XPath도 좋습니다.
이렇게 데이터를 받아오면 이제 화면에 보여주면 되겠죠?




httpRequest로 검색을 해보세요 ㅋ.
요청후 스트림으로 문자열을 읽어와서 xml 이든 json 이든 파싱하서 알맞게 사용하는겁니다