목록전체 글 (50)
운기의 블로그
이번에는 주소검색 옆에 버튼을 하나 만들어 스피너에 값들이 전부 존재한 상태에서 버튼을 클릭하면 해당 지역으로 이동해서 마커를 찍어주는 걸 만들어 보겠습니다. (중간에 전에 코드에서 안보이는 부분은 그대로 사용하시면 됩니다.) 위의 작업이 끝났으면 이제부터 스피너에 맨 처음 "선택" 이라는 값을 넣기 위한 작업을 진행 할 겁니다. 이런 작업을 하는 이유는 파싱한 결과값을 바로 스피너에 넣어주기 때문에 초기값은 바로 파싱해서 가져왔을때 첫번째 값이 들어가게 됩니다. 포스팅 #5에 마지막 결과화면을 보면 아래 JSON 파일에서 첫번째 값인 서울특별시가 스피너 처음에 들어오는 걸 확인 할 수 있습니다. 두번째 스피너와 세번째 스피너 역시 종로구와 청운동으로 고정되어있기에 저는 초기값에 "선택" 이라는 값을 넣..
저번 작업은 스레드를 만들고, 기상청지역코드를 파싱해와서 첫번째 스피너에만 넣어주었습니다. 그리고 나서 두번째 스피너와 3번째 스피너에 값을 넣을때, 첫번째 스피너에 들어있는 값에 따라 두번째 스피너의 값이 달라지고, 두번째 스피너의 값에 따라 3번째 스피너의 값을 어떻게 하면 달라질까 고민하다가 생각난 방법은 첫번째 스피너에 값이 들어갔을때 스피너의 position 값을 이용하여 지역코드를 이용해 다시 한번 파싱을 한 후 두번째 스피너에 값을 넣어주는 방법을 선택했습니다. JSONObject n_x, n_y는 기상청지역코드를 타고 들어가다 보면 맨 마지막에 서울특별시 종로구 청운동... 이런식으로 나오고 이 지역에 해당하는 x,y 좌표의 값이 있기에 그 값을 담아주기 위해서 만들어 주었습니다. 첫번째 ..
안드로이드도 시작한지 얼마안된상태에서 파싱도 처음해보니 이번꺼는 체감상 상당히 어려웠습니다..ㅠㅠ 우선 오늘 포스팅 할 내용은 기상청에서 제공해주는 JSON 파일을 파싱할 건데, 이때 안드로이드에서는 UI에 부담이 가지 않게 하기 위해서 ANSYCTASK(스레드) 를 이용해서 구현했고 파싱한 결과값을 Spinner에 넣어주는 작업입니다. http://www.kma.go.kr/DFSROOT/POINT/DATA/top.json.txt 기상청에서 제공해주는 code 와 vaule 값으로 이루어진 JSON 파일입니다. JSON 파일을 파싱하기 위해서 구글에서 만든 GSON을 이용했습니다. GSON을 이용하는 방식은 간단합니다. 안드로이드 프로젝트에서 build.gradle (Module.app)에서 사용하고 싶..
스레드란 프로세스가 할당 받는 자원을 이용하는 실행 흐름의 단위로 각각의 스레드에는 프로그램 카운터, 레지스터, 스택, 스레드 ID가 존재하고, 스레드들은 자원(code, data, heap 영역)을 공유하고 있고, 운영체제의 지원여부에 따라 단일 스레드 와 멀티(다중) 스레드로 나눌 수 있다. 단일 스레드 / 멀티 스레드 단일 스레드 하나의 프로세스에서 하나의 스레드 실행 하나의 레지스터와 스택으로 표현 멀티 스레드 프로그램을 다수의 실행 단위로 나누어 실행 프로세스 내에서 자원을 공유하여 자원 생성과 관리의 중복을 최소화 서버가 많은 요청을 효율적으로 수행 할 수 있는 환경 제공 각각의 스레드가 고유의 레지스터와 스택으로 표현됨 멀티 스레드의 장점 프로세스로 동시에 처리하는 것 보다 멀티스레드로 처리..
프로세스란? 1. 운영체제로 부터 자원을 할당 받는 작업의 단위 2. 실행중인 프로그램 ( task ) 프로세스와 프로그램의 차이는 ?? 프로그램은 하드디스크나 SSD에 존재하고 실행되기를 기다리는 명령어(코드)나 정적데이터를 의미합니다. 프로세스는 이런 프로그램을 메모리에 적재시켜 CPU를 할당 받고 프로그램을 실행하고 있는 상태를 의미합니다 프로세스 = 실행되는 프로그램 예를 들면 컴퓨터를 키고 메모장을 10번 클릭합니다. 메모장(=프로그램)을 10번 클릭했을 때 우리는 한개의 프로그램을 10번 실행시킨거고, 프로세스 상에는 10개의 메모장이 사용되고 있다고 생각하시면 됩니다. 프로세스의 구조 운영체제안에는 프로세스가 존재하고 이런 프로세스들은 각각의 독립된 메모리를 가지고 있습니다. 메모리 영역은 ..
키 해시 까지 추가하고 나면 이제 카카오 개발자에서 제공해주는 sdk를 다운받고 안드로이드에 추가해 주면 된다. 카카오 개발자에 아주 친절하게 나와있으니까 참고해도 충분할꺼 같다. 참고 : http://apis.map.kakao.com/android/guide/#step2 카카오 개발자에서 다운 받은 sdk 폴더 입니다. 저는 키해시를 다운받은 후 새롭게 생성하여 작업을 진행했습니다. 우선 첫번째 빨간줄이 쳐진곳에 원래는 android 라고 되어있습니다. 그곳을 클릭하셔서 project를 클릭하여 변경해 줍니다. 1. app -> libs -> jar 파일을 넣어준다. 2. app -> src -> main 에서 jniLibs 폴더를 만들어 주고 3개의 폴더를 넣어준다. (저는 폴더자체를 복사하면 에러가..