Download presentation
Presentation is loading. Please wait.
1
Page 1 Android Programming November 04 / 2009 S/W Junhyuk Jang
2
Page 2 Table of Contents Android of Overview Android Application 개발환경 구축 프로그래밍 시작, 프로젝트 생성 Application 실습
3
Page 3 Android of Overview What is Android? Google 이 휴대폰 제조, 서비스, 솔루션, 칩셋, … 등의 업체들과 OHA(Open Handset Alliance) 을 맺고 만든 Mobile Platform Linux kernel 기반의 OS JAVA 기반의 Application Open Source 로 개발
4
Page 4 Android of Overview Features Application Framework : 컴포넌트의 재사용 / 대체 가능 Dalvik Virtual Machine : Mobile Device 최적화 Integrated Browser : Open Source Webkit SQLite : 구조화된 데이터 저장 Media Support : MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF GSM, Bluetooth, EDGE, 3G, WiFi : 하드웨어 의존적 최적화된 그래픽 : 2D, 3D(OpenGL ES1.0 지원 ) 풍부한 개발환경 : 디버깅, 메모리, 성능 프로파일링, Eclipse IDE Plugin 을 위한 에뮬레이터, 툴 제공
5
Page 5 Android of Overview Open Source 기반 JNI(Java native Interface) 이용해 native C/C++ 로 작성 Framework API 사용하여 재사용 / 교체 가능 Open Source 기반 JNI(Java native Interface) 이용해 native C/C++ 로 작성 Framework API 사용하여 재사용 / 교체 가능 Linux kernel 영역 Google 에서 Java 로 개발 Runtime 으로 Target 에서 구동 Runtime 으로 Target 에서 구동 Google 에서 Java 로 개발 Architecture
6
Page 6 Android Application 개발환경 구축 시스템 요구 사항
7
Page 7 Android Application 개발환경 구축 Java JDK Download http://java.sun.com/javase/downloads/index.jsp http://java.sun.com/javase/downloads/index.jsp
8
Page 8 Android Application 개발환경 구축 개발 환경 구축 Java JDK Download
9
Page 9 Android Application 개발환경 구축 개발 환경 구축 Java JDK Download
10
Page 10 Android Application 개발환경 구축 개발 환경 구축 Java JDK Download
11
Page 11 Android Application 개발환경 구축 개발 환경 구축 Java JDK Install
12
Page 12 Android Application 개발환경 구축 개발 환경 구축 Java JDK Install
13
Page 13 Android Application 개발환경 구축 개발 환경 구축 Java JDK Install
14
Page 14 Android Application 개발환경 구축 개발 환경 구축 Java JDK Install
15
Page 15 Android Application 개발환경 구축 개발 환경 구축 JDK 환경설정
16
Page 16 Android Application 개발환경 구축 개발 환경 구축 JDK 환경설정 시스템 환경변수에 Path 설정 Path 추가
17
Page 17 Android Application 개발환경 구축 개발 환경 구축 JDK 환경설정 도스 명령 창 (cmd) 에서 “java –version” 실행
18
Page 18 Android Application 개발환경 구축 개발 환경 구축 Android SDK Download http://developer.android.com/sdk/index.html http://developer.android.com/sdk/index.html
19
Page 19 Android Application 개발환경 구축 개발 환경 구축 Android SDK Download
20
Page 20 Android Application 개발환경 구축 개발 환경 구축 개발 환경 구축 (Windows 의 경우 ) Android SDK Download 설치할 폴더에 저장후 압축 푼다. 예 ) c:\android\android
21
Page 21 Android Application 개발환경 구축 개발 환경 구축 개발 환경 구축 (Windows 의 경우 ) SDK Setup.exe 실행 바로 실행하면 에러가 발생한다.
22
Page 22 Android Application 개발환경 구축 개발 환경 구축 개발 환경 구축 (Windows 의 경우 ) 에러 처리 Settings 의 Misc 에서 Force https://... Sources to be fetched using http://... 체크
23
Page 23 Android Application 개발환경 구축 개발 환경 구축 개발 환경 구축 (Windows 의 경우 ) 항목 Accept 또는 Accept All 선택, Install Accepted 실행
24
Page 24 Android Application 개발환경 구축 개발 환경 구축 개발 환경 구축 (Windows 의 경우 ) 설치되는 항목 (Accepted All) Usb Driver package, revision 1 SDK Platform Android 1.5, API 3, revision 3 Google APIs by Google Inc., Android API 3, revision 3 SDK Platform Android 1.6, API 4, revision 1 Google APIs by Google Inc., Android API 4, revision 1 SDK Platform Android 1.1, API 2, revision 1 Google APIs by Google Inc., Android API 5, revision 1 Documentation for Android SDK, API 5, revision 1 Downloading -> Installing -> Installed 화면 출력
25
Page 25 Android Application 개발환경 구축 개발 환경 구축 Android SDK 환경설정 시스템 환경 변수에 Path 설정
26
Page 26 Android Application 개발환경 구축 개발 환경 구축 AVD(Android Virtual Device) 설정 현재 생성되어 있는 AVD 종류 알아보기 android list avd (command 창에서 수행, 이후 동일 ) 설치된 항목이 없는 경우
27
Page 27 Android Application 개발환경 구축 개발 환경 구축 AVD(Android Virtual Device) 설정 AVD 종류를 보고 버젼에 맞는 번호 찾기 android list target
28
Page 28 Android Application 개발환경 구축 개발 환경 구축 AVD(Android Virtual Device) 설정 번호에 맞는 AVD 설치 android create avd –t [ 번호 ] –c [sd 카드 ] –p [ 설치폴더 ] –n [ 이름 ] –s [ 스킨 ] –f ( 강제로 생성, 기존 Overwrite) 예 ) android create avd -t 4 -c 32M -p c:\android\avd\avd_20 -n avd_20 -s HVGA AVD Manager 에서도 설치 가능
29
Page 29 Android Application 개발환경 구축 개발 환경 구축 Eclipse Download http://www.eclipse.org/downloads/ http://www.eclipse.org/downloads/
30
Page 30 Android Application 개발환경 구축 개발 환경 구축 Eclipse Download
31
Page 31 Android Application 개발환경 구축 개발 환경 구축 Eclipse Download
32
Page 32 Android Application 개발환경 구축 개발 환경 구축 Eclipse 환경설정 eclipse-jee-galileo-win32.zip 파일 압축 풀기 ex) C:\Android\eclipse
33
Page 33 Android Application 개발환경 구축 개발 환경 구축 Eclipse 환경 설정 작업 폴더 (workspace) 생성 ex) c:\Android \workspace
34
Page 34 Android Application 개발환경 구축 개발 환경 구축 Eclipse 환경설정 eclipse.exe 실행 후 작업 폴더 설정
35
Page 35 Android Application 개발환경 구축 개발 환경 구축 Eclipse Download eclipse 작업 폴더 설정
36
Page 36 Android Application 개발환경 구축 개발 환경 구축 Eclipse Download eclipse 실행 후 모습
37
Page 37 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT Add-ons ADT (Android Developer Tools) 메뉴 Help -> Install New Software… 선택
38
Page 38 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT Add-ons
39
Page 39 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT Add-ons
40
Page 40 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT Add-ons
41
Page 41 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT Add-ons
42
Page 42 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT 환경설정 메뉴 Window -> Preferences 선택
43
Page 43 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT 환경설정
44
Page 44 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT 환경설정
45
Page 45 Android Application 개발환경 구축 개발 환경 구축 Eclipse ADT 환경설정 메뉴 Window -> Android AVD Manager 선택
46
Page 46 Android Application 개발환경 구축 ( 구 ) 개발 환경 구축 Eclipse ADT 환경 설정
47
Page 47 Android Project 생성 Project 생성 메뉴 New->Project or Other->Android–Android Project
48
Page 48 Android Project 생성 Project 생성 Project Name : HelloAndroid Android 2.0 선택 Application Name : HelloAndroid Package Name : com.zang.helloandroid Create Activity 체크 : HelloAndroid
49
Page 49 Android Project 생성 Project 생성 ※ 처음 생성시 다음과 같은 에러 화면이 나올 수 있음.
50
Page 50 Android Application 개발환경 구축 Project 구성
51
Page 51 [ 참고 1] OHA(Open Handset Alliance) Mobile Operators Handset Manufacturers Semiconductor Companies Software Companies Commercialization Companies
52
Page 52 [ 참고 2] [ 참고 2] Dalvik VM is not Java VM Android 는 JVM 이 아닌 Dalvik VM 사용 이유는 SUN 의 라이센스를 피하기 위함 Java 는 GPLv2 하에서 배포된 Open Source Java VM 탑재시 SUN 에 라이선스 비용 지불 (Java ME) Android 에서는 Java SE 를 사용 Dalvik VM 의 특징 레지스터 기반 thread 와 low-level 메모리 관리 기능 Linux kernel 의존.java.java.class.class.dex.dex.apk.apk
53
Page 53 Android of Overview Process of the Memory Structure Embed Linux 와 논리 메모리 공간의 구성 비교 프로그램 본체 공유 라이브러리, 공유 파일 (uClibc 등의 so 파일, font)스택 공유 라이브러리, 공유 파일 (uClibc 등의 so 파일, font)스택 ARM Embed Linux 2.2 0x00008000 0x40000000 Android 프로그램 본체 공유 파일 (font, Dalvik VM 의 Dalvik VM 의 실행 Application) 공유 라이브러리 (libandroid_runtime 등의.so 파일 ) 공유 파일 (font, Dalvik VM 의 Dalvik VM 의 실행 Application) 공유 라이브러리 (libandroid_runtime 등의.so 파일 ) 스택스택 0x00008000 0x40000000 0xB0000000
54
Page 54 Android of Overview 안드로이드 구동 ARM Based Target Board Android Bootloader Load Linux Start Kernel - /init/main.c Initialization Process /etc/init.rc Start Android Services Console, adbd, Service Manager, mountd, debuggerd, ril-daemon, zygote, mediaserver, installd, flash_recovery
55
Page 55 Android of Overview File System Emulator 환경에서의 File System 제어 (Linux 환경 ) PC 에서 동작하는 Android Debug Bridge(adb) 툴을 사용하여 Linux 의 Shell 을 조작할수 있다. emulator 상에서 동작하는 adbd 프로세서와 통신 // varvartmptmpsystemsystemsyssyssbinsbinetcetcprocprocdatadatarootroot binbinappappframeworkframeworkliblib……systemsystemdalvik-cachedalvik-cache……logslogs Linux Shell Command Application Program Java Library Native Code Library 저작권 관리정보, 로그, 다운로드, App Data
Similar presentations