본문 바로가기

Android

안드로이드의 기초

여기서는 전체적인 맥락을 잠깐 훑어보는 것


안드로이드 프로그램 구조

액티비티 Activity
- 데스크탑 어플리케이션의 윈도우/대화상자라고 부르는 요소와 비슷
- 화면을 사용하지 않는 '헤드리스headless' 프로그램은 컨텐트 프로바이더나 서비스 형태로 사용

컨텐트 프로바이더 Content provider
- 기기에 들어있는 각종 데이터에 대한 추상적인 인터페이스를 제공, 여러 어플리케이션에서 사용할 수 있음
- 데이터에대한 통제권은 충분히 확보한 상태에서 개발중인 어플리케이션뿐 아니라 다른 어플에도 접근 가능하도록 기능 제공

인텐트 Intent
- 기기내부를 훑으며 특정 이벤트가 발생했다는 사실을 각 어플리케이션에 알려주는 시스템 메시지
  ex) 하드웨어 상태 변경(SD카드 삽입등의), 외부 데이터 수신(SMS수신 등), 특정 어플에서 발생하는 이벤트 모두 포함
- 각 어플은 인텐트에 대응할 수 있을 뿐 아니라, 인텐트를 생성해 다른 액티비티를 실행, 또는 특정 조건에 해당하는지 확인가능

서비스 Service
- 액티비티나 컨텐트 프로바이더, 인텐트 리시버등은 모두 필요시간동안만 동작하는 구성요소
- 서비스는 필요한 경우 종료되지 않고 특정 액티비티와 관계없이 항상 동작하도록 만들어진 구성요소
- ex) RSS피드에 업데이트된 내용 확인하는 서비스 / MP3음악을 선택하는 액티비티가 종료되도 계속 재생하는 기능의 서비스



사용 가능한 구성 요소

데이터 보관
- 아이콘, 도움말 파일처럼 거의 변경될 일이 없는 내용은 개발 당시 어플리케이션이 포함 가능
- 기기 내부에 작은 공간을 할당 받아서, 사용자가 입력/수집한 데이터 중 보관할 필요가 있는 부분을 DB파일 기반등으로 저장
- 사용자가 SD카드 등 외부 저장 공간을 사용한다면 그것도 활용 가능

네트웍
- 안드로이드 기기는 여러가지 통신 방법을 통해 네트웍을 사용
- 자바의 기본소켓부터 웹킷 기반의 웹브라우저까지 어플리케이션에 원하는 네트웍 기능을 얼마든지 탑재

멀티미디어
- 안드로이드 기기는 소리나 영상을 기록/재생, 세부 기능은 실제 탑재될 하드웨어 사양에 따라 달라짐
- 멀티미디어 작업으로 음악 재생, 카메라로 촬영, 마이크로 음성메모 등의 일이 가능

GPS
- 안드로이드 기기는 위치정보를 제공하는 GPS같은 기능을 자주 사용
- GPS를 활용하면 해당 기기가 지구상 어느 지점에 위치하는지를 쉽게 알 수 있음
- 위치를 파악하고 그 위치에 해당하는 지도 표시, 기기를 도난/분실 했을 경우 기기가 현재 어디에 있는지를 확인하는데 활용

전화서비스
- 일반적으로 휴대폰 기반인 경우가 대다수
- 어느 어플리케이션에서건 전화를 걸거나 받고, SMS문자 메시지를 보내거나 받고, 상식적으로 전화기에서 사용하는 기능 연동

'Android' 카테고리의 다른 글

안드로이드 기본 위젯  (0) 2010.09.08
AppWidgets  (0) 2010.09.08
안드로이드 위젯(widget)  (0) 2010.09.08
안드로이드 기본 프로젝트 생성  (0) 2010.09.08
메니페스트 파일  (0) 2010.09.08
안드로이드의 기초  (0) 2010.09.08