2
Contents
Android 소개Android 구성Processing
3
Android 소개
Internet vs Smart Phone
Apple vs AndroidMarketAndroid Platform
4
Internet and Mobile Phone
User
5
Smart phone Sales
6
Apple vs Android
PlatformApple Mobile Platform vs Android Open Platform
7
Android Smart Phone
8
Market
9
Android Market
• 중앙 집중화된 시장 형성- 안드로이드 챌린지 대회
• 개발자 유치- 개발자 유치 경쟁에서 가장 중요한 것
• 마켓의 크기- 개발자 등록비 25$- 7 : 2 : 1 = 개발자 : Google : 통신사 = 70% : 20% :
10%- 광고 수익을 주 전략으로 세움
10
Android Market
• 애플리케이션 등록에 제한이 없음• 신뢰성의 문제
- 사용자의 평가와 동의로 해결
11
Android Platform
12
Android 구성
Android 란 ?Android 특징Android ArchitectureAndroid Application
13
Android 란 ?
• 운영체제 , 미들웨어 , 키 응용프로그램을 가지고 있는 모바일 장치용 소프트웨어 스택 (Stack)- 구글의 휴대폰용 오픈 소스 소프트웨어 플랫폼 ( 또는 주변도구 )- 모바일 웹 응용을 위한 휴대폰용 소프트웨어 플랫폼- 주로 구글의 서비스를 이용 단말 환경에서 구현하고 활용하기
위한 모바일 기반 플랫폼
• Android SDK- 안드로이드 플랫폼용 응용 프로그램을 Java 언어로 개발
가능하게 하는 여러 가지 도구들과 API 들을 제공
14
Android 특징
• 재사용 및 대체가 가능한 Application Framework• 모바일 장치에 최적화된 Dalvik Virtual Machine• Web Kit 엔진을 기반으로 한 Integrated Browser• 2D, 3D (OpenGL ES 1.0) 그래픽을 지원• 구조적 데이터 처리를 위한 SQLite• 다양한 오디오 , 비디오 , 이미지 포맷을 지원• GSM Telephony (h/w dependent)• Camera, GPS, Compass, Accelerometer (h/w
dependent)• 뛰어난 개발 환경 ( 에뮬레이터 , 디버깅 툴 , Eclipse plug-
in, etc.)
15
Android Architecture
16
Android Kernel
• Android 는 Linux kernel 기반- 메모리 및 프로세스 관리 , permission 기반의 보안 모델 ,
검증된 드라이버 모델 , 공유 라이브러리 지원 , 오픈 소스 기반의 장점
• Android is not Linux- 표준 리눅스 유틸리티를 전부 포함하진 않음 .- glibc 지원하지 않음 .
17
Android Libraries
• System C Library• Media Lib, Native Server• LibWebCore, SGL, 3D Lib, FreeType• SQLite
18
Android Runtime
• Dalvik Vitual Machine- 임베디드 환경에 최적화된 독자적인 clean-room 가상 머신- 애플리케이션의 호환성과 실행 일관성을 제공- 최적화된 포맷 (.dex) 과 Dalvic 바이트 코드 실행- 다양한 가상 머신 프로세스들을 지원
• Core Library- 단순하고 익숙한 개발 플랫폼을 제공하는 Java 언어를 위한
CoreAPI 포함
19
Application Framework
• Application Framework 상위 단의 Application 이 사용하는 Service 들의 모임 ( 사용자의 필요에 따라 Interact 하지 않을 수 있음 )
- Activity Manager: 애플리케이션의 Lifecycle 을 담당- Package Manager: 시스템에서 애플리케이션들의 정보 담당- Window Manager: 모든 애플리케이션과 관련된 화면 담당- View System: Standard widget 담당- Hardware Service
• Bluetooth, telephony, location,…
20
Application 구성
21
Application Lifecycle
22
Processing
Download설치Example
23
Download
• http://android.processing.org 설명• http://developer.android.com sdk, ADT
• Download- JDK, Eclipse- android-sdk_r05 - ADT-0.96 - processing-0184
24
설치
• Step- JDK, Eclipse 설치- Eclipse
• [Help]-[Install New Software] 선택 -> ADT 추가 -> 다시 시작
• [Windows]-[Preferences] 선택 -> [Android] -> android_sdk 추가
• [Windows]-[Android SDK and AVD Manager] 선택 -> [Available Packages] 선택 – [Install Selected] 선택
– SDK Platform Android 2.0.1, API 6– Google APIs by Google Inc., Android API 6
- processing-0184• [Tools]-[Android Mode] 선택 -> Eclipse 에서 추가했던
android_sdk 추가
25
Example
• Example 실행
26
Q & A