260 likes | 588 Views
A n d r o i d. Android. 2010 년 5 월 19 일. 동서대학교 백선재 loboghost@nate.com. Contents. Android 소개 Android 구성 Processing. Android 소개. Internet vs Smart Phone Apple vs Android Market Android Platform. Internet and Mobile Phone User. Smart phone Sales. Apple vs Android Platform.
E N D
A n d r o i d Android 2010년 5월 19일 동서대학교 백선재 loboghost@nate.com
Contents • Android 소개 • Android 구성 • Processing
Android 소개 • Internet vs Smart Phone • Apple vs Android • Market • Android Platform
Apple vs AndroidPlatform Apple Mobile Platform vs Android Open Platform
Android Market • 중앙 집중화된 시장 형성 • 안드로이드 챌린지 대회 • 개발자 유치 • 개발자 유치 경쟁에서 가장 중요한 것 • 마켓의 크기 • 개발자 등록비 25$ • 7 : 2 : 1 = 개발자 : Google : 통신사 = 70% : 20% : 10% • 광고 수익을 주 전략으로 세움
Android Market • 애플리케이션 등록에 제한이 없음 • 신뢰성의 문제 • 사용자의 평가와 동의로 해결
Android 구성 • Android 란? • Android 특징 • Android Architecture • Android Application
Android 란? • 운영체제, 미들웨어, 키 응용프로그램을 가지고 있는 모바일 장치용 소프트웨어 스택 (Stack) • 구글의 휴대폰용 오픈 소스 소프트웨어 플랫폼 (또는 주변도구) • 모바일 웹 응용을 위한 휴대폰용 소프트웨어 플랫폼 • 주로 구글의 서비스를 이용 단말 환경에서 구현하고 활용하기 위한 모바일 기반 플랫폼 • Android SDK • 안드로이드 플랫폼용 응용 프로그램을 Java언어로 개발 가능하게 하는 여러 가지 도구들과 API들을 제공
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.)
Android Kernel • Android는 Linux kernel 기반 • 메모리 및 프로세스 관리, permission 기반의 보안 모델, 검증된 드라이버 모델, 공유 라이브러리 지원, 오픈 소스 기반의 장점 • Android is not Linux • 표준 리눅스 유틸리티를 전부 포함하진 않음. • glibc 지원하지 않음.
Android Libraries • System C Library • Media Lib, Native Server • LibWebCore, SGL, 3D Lib, FreeType • SQLite
Android Runtime • Dalvik Vitual Machine • 임베디드 환경에 최적화된 독자적인 clean-room 가상 머신 • 애플리케이션의 호환성과 실행 일관성을 제공 • 최적화된 포맷 (.dex)과 Dalvic 바이트 코드 실행 • 다양한 가상 머신 프로세스들을 지원 • Core Library • 단순하고 익숙한 개발 플랫폼을 제공하는 Java언어를 위한 CoreAPI 포함
Application Framework • Application Framework 상위 단의 Application이 사용하는 Service들의 모임 (사용자의 필요에 따라 Interact하지 않을 수 있음) • Activity Manager: 애플리케이션의 Lifecycle을 담당 • Package Manager: 시스템에서 애플리케이션들의 정보 담당 • Window Manager: 모든 애플리케이션과 관련된 화면 담당 • View System: Standard widget 담당 • Hardware Service • Bluetooth, telephony, location,…
Processing • Download • 설치 • Example
Download • http://android.processing.org설명 • http://developer.android.com sdk, ADT • Download • JDK, Eclipse • android-sdk_r05 • ADT-0.96 • processing-0184
설치 • 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 추가
Example • Example 실행