2009년 12월 3일 목요일

1. 구글 안드로이드 소개

1.1 안드로이드 개요

 

안드로이드(Android)는 구글의 개발형 모바일 플랫폼입니다. 구글은 OHA(Open Handset Alliance)를 통해서 휴대폰 플랫폼의 폐쇄성을 타파하기 위해 안드로이드 플랫폼을 만들었습니다. OHA는 전세계 30 여 개의 이동통신사, 휴대폰 제조사, 소프트웨어 개발사, 반도체 제조사 등 다양한 업종의 회사가 연합한 조직이며, NTT 도코모, 차이나 모바일, T모바일, LG전자, 모토롤라, 삼성전자, 인텔, 엔비디아, 이베이 등 다양한 전문 기업들이 참여하고 있습니다. 이런 개발형 모바일 플랫폼을 통해 비교적 제약이 적은 환경에서 다양한 어플리케이션을 개발하거나 운영할 수 있게 하였습니다. 폐쇄적인 휴대폰 환경 타파로 얻어진 개방적인 환경에서 구글의 강점인 광고, 검색 등을 적용하였고, 사용자는 물론, 이동통신사, 휴대폰 제조사, 소프트웨어 개발자 등에게 보다 자유롭고 이익이 될 수 있는 터전을 제공하였습니다.

 

안드로이드는 모바일 단말기를 위한 소프트웨어 스택이며 운영체제, 미들웨어, 기본 어플리케이션들을 포하고 있습니다. 안드로이드는 모바일 환경에 최적화된 리눅스 기반의 운영체계와 사용자 인터페이스, 그리고 그 응용 프로그램들의 묶음입니다. 기본 어플리케이션은 email client, SMS program, calendar, maps, browser, contacts 등등 여러 가지가 있으며 모두  모두 자바 언어로 만들어진 것들입니다.

 

안드로이드 플랫폼 상에서 어플리케이션을 개발할 수 있도록 하는 안드로이드 SDK(Software Developement Kit)가 제공됩니다. 이 SDK는 자바를 이용하여 안드로이드 상에서 어플리케이션을 개발할 수 있도록 하는 도구들과 API(Application Program Interface)로 구성되어 있습니다. 안드로이드 SDK는 안드로이드 개발자 사이트인 http://developer.android.com/에서 다운로드 받을 수 있습니다. 그 외 개발 개발 정보와 블로그, 커뮤니티 사이트 제공하고 있습니다.

 

다음 그림은 구글 안드로이드 SDK를 이용하여 만든 어플리케이션 예입니다.

 


 다음 그림은 안드로이드 단말기 예이며, 삼성 단말기는 아직 출시는 안 된 상태의 개념 사진으로 보면 됩니다.

 

 

1.2 안드로이드의 특징

 

안드로이드는 다음과 같은 특징을 가지고 있습니다.

 

  • 어플리케이션 프레임워크
    컴포넌트의 재사용과 대체가 가능함
  • Dalvik 가상 머신
    모바일 디바이스에 최적화됨
  • 통합 브라우저
    오픈 소스 WebKit 엔진 기반
  • 그래픽 최적화
    2D/3D(OpenGL ES 1.0 사양) 그래픽(hardware acceleration optional)
  • SQLite
    데이터 저장을 위한 RDBMS
  • 미디어 지원
    오디오, 비디오, 이미지 (MPEG4, H.264, MP3, JPG, PNG, GIF 등)
  • 하드웨어 의존적인 기술들
    GSM 텔레포니 기술, Bluetooth, EDGE, 3G, and WiFi, Camera, GPS, compass와 accelerometer
  • 풍부한 개발 환경
    장치 에뮬레이터, 디버깅 도구, 메모리 및 성능 프로파일링 도구, 이클립스 IDE 플러그인

 

1.3 안드로이드 마켓

 

안드로이드 마켓(Android Market)은 애플의 iPod Touch/iPhone을 위한 앱 스토어(App Store)와 같은 어플리케이션 판매 서비스입니다. 안드로이드 마켓은 2008년 8월 어플리케이션 공유를 위해서 런칭이 되었고, 2009년 10월 안드로이드 마켓이 전면 유료화가 되었습니다. 안드로이드 마켓을 애플 앱 스토어와 비교한 아래 표를 참고 하세요.

 

 

안드로이드가 각광 받는 모바일 플랫폼이 되고 있지만 세계 스마트폰 시장 점유율이나 스마트폰 운영체제 시장 점유율은 높지 않습니다. 스마트폰 시장 점유율은 노키아가 압도적으로 1위를 달리고 있고, 다음이 RIM의 블랙베리, 그리고 애플의 iPhone입니다. 스마트폰 운영 체제도 심비안, 블랙베리, 아이폰, 윈도 모바일에 이어서 5위에 랭크되어 있습니다. 그러나 곧 윈도 모바일을 추월할 기세입니다.

 

(출처 : http://www.seoul.co.kr/news/newsView.php?id=20091113014007)

 

안드로이드 단말기는 현재 많이 출시되어 있는 상태는 아닙니다. 2009년 11월 현재 admob이라는 곳에서 조사한 바에 의하면 HTC의 Dream이 36%를 차지하고 다음이 모토롤라의 드로이드 제폼이 24%를 차지하고 있습니다.

 

(출처 : http://gigaom.com/2009/11/22/admob-october/)

 

1.4 안드로이드의 전망

 

안드로이드의 전망이 밝지만 안드로이 앞에 놓인 길도 험난하다고 생각합니다. 우선 개방형 플랫폼이라는 점이 어플리케이션의 안정성을 보장하지 않아서 치명적인 단점이라는 지적이 많습니다. 또한 안드로이드 성공의 열쇠는 얼마나 품질 높고 많은 어플리케이션이 있느냐입니다. 컨텐츠가 풍부한 환경은 쉽게 사라지지 않습니다. 이는 애플의 앱 스토어가 증명을 하였고, 많은 이동 통신사들이 이런 추세에 가담을 하고 있습니다. 이를 잘 알고 있는 구글은 개발자들을 안드로이드라는 신천지로 끌어 모으기 위해 노력하고 있습니다. 이런 노력 중 하나가 바로 ADC(Android Developers Challenge)입니다.

 

ADC(Android Developers Challenge)는 구글이 스마트폰 플랫폼에서 경쟁 우위를 확보하기 위해 만든 어플리케이션 경진 대회입니다. 안드로이드의 확산 및 활용을 극대화 한다는 목표를 가지고 2008년 4월부터 7월까지 ADC 1회 대회를 시작으로 현재 2 회 대회가 진행 중에 있습니다. 작년 1 회 대회에서는 1,788 개의 작품이 출품되었으며, 출품작 중 50 개 작품이 본선에 선정되었고 최종적으로 46 개가 공개되었습니다. 최근 국내에서도 KT가 안드로이드 기반 모바일 서비스 및 어플리케이션 공모전을 진행 중에 있습니다. 이 대회의 상금은 10 개의 카테고리별로 포상금이 1, 2, 3 등에게 각각 $100,000 USD, $50,000 USD, $25,000 USD가 걸려 있습니다. 또한 전체 카테고리 종합 1, 2, 3 등을 선정하고 포상금도 비숫한 수준으로 지급됩니다.

 

현재는 아이폰 개발자와 안드로이드 개발자 수는 비교도 안 되게 아이폰이 앞지르고 있습니다. 그러나 많은 개발자들이 아이폰에서 안드로이드로 옮겨가는 추세가 최근의 분위기입니다. 아래 조사 자료에 의하면 2009년 7월 기준으로 안드로이드 개발 프로젝트가 20%를 약간 상회하는 수준이고, 아이폰 개발 프로젝트는 80%를 가까이 되는 수준입니다. 점점 안드로이드 개발 프로젝트 수가 증가하는 추세를 확인할 수 있습니다.

 

 

2 장에서는 안드로이드 SDK를 설치한 후에 안드로이드 에뮬레이터를 실행시켜 보도록 하겠습니다. 안드로이드의 실제 실행 모습을 먼저 확인을 하고 나서, 3 장에는 "Hello World" 샘플 프로그램을 제작해서 에뮬레이터에 띄어 보는 것은 설명하겠습니다.

 

끝.

댓글 없음:

댓글 쓰기