김상형 - 안드로이드 프로그래밍 정복 참조 정리
![](http://thoth.kr/files/attach/images/49538/256/056/500px-android-logo_svg%5B1%5D.png)
실질 리더: Google
- 모바일 환경에서의 인터넷 보급 수단 필요 (데스트 탑 시장에서의 입지)
2005년 7월 개발 시작, 2007년 11월 안드로이드 첫 버전 릴리즈
최초의 상용 안드로이드 폰: HTC G1
안드로이드 버전
Version | Release date | API Level |
1.0 | 2008/09 | 1 |
1.1 | 2009/02 | 2 |
1.5 (Cup cake) | 2009/04 | 3 |
1.6 (Donut) | 2009/09 | 4 |
2.0 (Eclair) | 2009/10 | 5 |
2.1 | 2010/01 | 7 |
2.2 (Froyo) | 2010/05 | 8 |
* API - 일부 고급 기능을 제외하면 1.5 버전 이후 큰 변화 없음
* SDK 하위 호환성은 대부분 잘 유지, 일부 없어진 기능도 있음.
특징
1) Kernel: Linux 기반
2) Programming language: JAVA (C 로 개발가능한 NDK 발표, 일반적이지 않음)
3) 검증된 많은 라이브러리 포함 (OpenGL, SQLite, FreeType etc...)
Android architecture
* Libraries : C로 작성되어 있음
- SGL : 2D Graphics 서피스 관리자
- FreeType: Vector font output
* Android runtime
- Dalvik Virtual Machine :
1)자바 가상머신을 직접 사용하지 않고 모바일 환경에 최적화한 달빅 가상머신 사용
2) 각 프로세스별로 별도의 달빅 가상 머신 할당 (안정성, 메모리 효율성)
3) 달빅은 자바 클래스 바로 실행 못함. -> 클래스 파일을 dex 포맷으로 변경해야 사용 가능
* Framework: Android API
Android 4가지 구성요소
- 안드로이드 실행 파일: 같은 패키지 속에 속한 자바 클래스와 리소스의 집합일 뿐 (프로세스와 반드시 대응되지 않음, 응용 프로그램끼리 서로 공유 가능)
- 응용 프로그램은 적절한 권한만 있으면 누구든지 인스턴스화 가능한 4개의 컴포넌트 구성
(main과 같은 유일한 진입점이 따로 없음, 처음 생성되는 인스턴스의 생성자가 실질 진입점이 됨.)
1) Activity : 사용자 인터페이스의 기본 단위 (윈도우 보단 큰 개념), 응용 프로그램은 필요한만큼의 액티
비티 가질 수 있음.
2) Service: Background에서 무한히 실행되는 컴포넌트 (UI 없음, 액티비티와 연결해서 사용)
예) 미디어플레이어, 네트웍 감시
3) Broadcast Receiver: 시스템으로부터 전달되는 방송 대기, 신호 전달 시 수신 역할 (UI 없음, 액티비티 와 연결 사용)
4) Content Provider: 타 응용 프로그램을 위해 자신의 데이터를 제공. 응용 프로그램간 데이터를 공유할
수 있는 합법적 유일 장치. (예. 데이터베이스, 주소록)
- 응용 프로그램은 컴포넌트들 중 일부 또는 여러개 가지는 것이 가능, 컴포넌트의 구성은 매니페스트에 설정파일에 저장, 관리. 최초 실행 액티비티 정보도 매니페스트에 관리.
인텐트 (Intents)
- 4가지 컴포넌트는 서로 독립적으로 동작, 상호간의 통신을 위한 장치 필요, 인텐트가 담당.
- 컴포넌트간의 통신수단, 메시지에 대한 상세 정보 가짐
예. 주소록 목록 액티비티 -> 편집 액티비티 호출
(누구의 주소를 어떤 식으로 편집하라는 지시가 인텐트에 실림)
학습준비 상황...
1) 자바의 문법적 이해 필수 (ㅜ.ㅜ) (문법서 1권 정도 참고하자! )
2) XML: 기본 규칙 및 문서 편집 방법 정도 (인터넷 혹은 집 책장 구석에 쳐박혀 있을 Wrox책 참고)
3) Eclipse: 공식 개발 툴의 사용방법 (공부하면서...)
'Android Life' 카테고리의 다른 글
아이맥과 갤럭시 S 연결하기 (0) | 2010.07.10 |
---|---|
갤럭시 S 펌웨어 업그레이드 (0) | 2010.07.05 |
갤럭시 S, 드디어 스마트폰... 2편: 기능편 간단 리뷰 (0) | 2010.07.04 |
갤럭시 S, 드디어 스마트폰... 1편: 개봉 및 외관 리뷰 (0) | 2010.07.03 |
안드로이드 개발환경 구축 (0) | 2010.06.28 |