Compile Bytecode Android Application Development 4 SDK v
Compile, Bytecode 컴파일러 인터프리터 자바 안드로이드 Android Application Development 4
안드로이드 SDK 및 가상 장치 매니저 v 메뉴에서 Window > Android SDK AVD Manager 선택 v SDK 매니저 – – Virtual Devices: 에뮬레이터 생성 installed Packages: 설치된 SDK 버전 Available Packages: 설치 가능한 SDK 버전 update All을 클릭하면 전체 업데이트를 진행 Android Application Development 8
JDK, Eclipse, SDK 다운로드 및 설치 v JDK 설치 – http: //java. sun. com/products/archive/j 2 se/6 u 15/index. html – 파일: jdk-6 u 15 -windows-i 586. exe – D: java jdk 1. 6. 0_15 디렉토리에 설치 v Eclipse 설치 – http: //www. eclipse. org/downloads/packages/release/galileo/sr 2 – 파일: eclipse-jee-galileo-SR 2 -win 32. zip – D: javaeclipse 디렉토리에 압축 해제 v Android SDK 설치 – http: //developer. android. com/sdk/index. html – 파일: android-sdk_r 07 -windows. zip – D: javaandroid-sdk-windows 디렉토리에 압축 해제 Android Application Development 13
설치 디렉토리 구조 Android Application Development 14
SDK 업데이트 v SDK 업데이트 설치 – D: javaandroid-sdk-windowsSDK Manager. exe 실행 – Available Packages 항목에서 모두 선택하여 설치 • 장시간 소요 -> 커피 한잔 이상 ^^ – Virtual Devices 항목에서 Android_2. 2 AVD 생성 Android Application Development 15
이클립스 ADT 플러그인 v 상단 메뉴의 Window > Preferences 실행 – Android 항목 클릭 – SDK Location 지정하고 Apply 버 튼을 클릭하면 설치된 SDK 버전 들이 나열됨 v 플러그인 업데이트 – Help > Check for Updates Android Application Development 18
생애 첫 번째 안드로이드 애플리케이션 v 프로젝트 생성 – File > New > Project > Android Project – Project name: Hello. World – Buile Target: Android 2. 2 – Appliocation name: Hello. World – Package Name: com. paad. helloworld – Creat Activity: Hello. World – Min SDK Version: 8 – Finish 버튼 클릭 Android Application Development 20
시작 구성 만들기 v 애플리케이션의 실행과 디버깅 에 대해 서로 다른 시작 구성을 지정할 수 있다. v 시작 구성 만들기 – 해당 프로젝트를 선택 – Run 메뉴의 Run Configurations 선 택 – Android Application 선택, 마우스 우측 클릭후 New 선택 – Name: Hello. World – Project: Hello. World 선택 – Launch Action: Launch Default Activity Android Application Development 21
Hello. World 이해하기 // Hello. World. java package com. paad. helloworld; import android. app. Activity; import android. os. Bundle; public class Hello. World extends Activity { /** Called when the activity is first created. */ @Override public void on. Create(Bundle saved. Instance. State) { super. on. Create(saved. Instance. State); set. Content. View(R. layout. main); } } v Activity는 화면에서 사용자와 상호작용하는 애플리케이션 구 성요소들을 위한 기반 클래스 v 전통적인 데스크톱 개발에서의 Form과 유사 v Activity 확장하는 클래스 작성 – on. Create 메서드 재정의 • 수퍼클래스의 on. Create 메서드 호 출 • set. Content. View 메서드를 사용하 여 /res/layout 폴더 내의 main. xml 파일의 레이아웃 정의대로 부풀린 다. v 리소스는 res 폴더 내에 저장 – drawable, layout, values 폴더 – ADT 플러그인은 이 리소스를 해석 하여 R. class 에 각 리소스들의 ID 를 등록해 두기 때문에 R 클래스 를 통해 리소스에 접근할 수 있다. Android Application Development 24
할 일 목록(To. Do. List) 예제 v 네이티브 안드로이드 뷰 컨트 롤 이용 1. 프로젝트 생성 2. New Android Project – File > New > Project – Android Project > Next Android Application Development 31
할 일 목록(To. Do. List) 예제 3. Window > Android SDK and AVD Manager – 4. 생성된 AVD - PAAD Virtual Devices 생성 Android Application Development 32
할 일 목록(To. Do. List) 예제 5. 시작 구성 – – Run만 수행 Run > Run Configurations. . . 6. Target 항목에서 조금전에 생 성한 PAAD AVD를 선택 Android Application Development 33
할 일 목록(To. Do. List) 예제 7. PAAD Run 화면 Android Application Development 34
한글 입력기 설치 8. 한글 입력기 설치 – – 에뮬레이터 켠 상태에서 D: java 폴더 내에 Hangul. Keyboard. apk 다운로드 http: //www. lug. or. kr/files/android/Hangul. Keyboard. apk 도스 창에서 adb install Hangul. Keyboard. apk 9. settings > Language & Keyboard settings > Select language > 한국어 10. settings > 언어 및 키보드 > 한글 접촉식 키보드 체크 – 한글 사용 시에는 입력란에 롱클릭하여 입력방법 선택 후 한글 접촉식 키보드를 선택 Android Application Development 35
할 일 목록(To. Do. List) 예제 v main. xml 파일의 레이아웃 수 정 v To. Do. List 액티비티 수정 – To. Do. List. java – Linear. Layout 내에 Edit. Text와 List. View 컨트롤을 추가 // main. xml // To. Do. List. java <? xml version="1. 0" encoding="utf-8"? > <Linear. Layout xmlns: android="http: //schemas. android. com/apk/res/android" android: orientation="vertical" android: layout_width="fill_parent" android: layout_height="fill_parent"> <Edit. Text android: id="@+id/my. Edit. Text" android: layout_width="fill_parent" android: layout_height="wrap_content" android: text="새 해야 할 일" /> <List. View android: id="@+id/my. List. View" android: layout_width="fill_parent" android: layout_height="wrap_content" /> </Linear. Layout> package com. paad. todolist; import android. app. Activity; android. os. Bundle; android. widget. Edit. Text; android. widget. List. View; public class To. Do. List extends Activity { /** Called when the activity is first created. */ @Override public void on. Create(Bundle saved. Instance. State) { super. on. Create(saved. Instance. State); // 뷰를 인플레이트 한다. set. Content. View(R. layout. main); } } // UI 위젯들에 대한 레퍼런스를 얻는다. List. View my. List. View = (List. View)find. View. By. Id(R. id. my. List. View); final Edit. Text my. Edit. Text = (Edit. Text)find. View. By. Id(R. id. my. Edit. Text); Android Application Development 37
할 일 목록(To. Do. List) 예제 v 해야 할 일 저장 – Array. List 정의 – List. View와 Array. List 바인딩 • Array. Adapter 사용 v 사용자의 새로운 할 일 추가 가 능하도록 – // To. Do. List. java import java. util. Array. List; import android. widget. Array. Adapter; @Override public void on. Create(Bundle saved. Instance. State) { super. on. Create(saved. Instance. State); set. Content. View(R. layout. main); – Edit. Text에 D패드 가운데 버튼 클릭을 기다리 는 on. Key. Listener 추가하고, Edit. Text의 내용 을 할 일 목록에 추가하고, 이 변경을 Array. Adapter에 통지. 그리고 Edit. Text를 비우 고 다른 해야 할 일이 입력될 수 있도록 준비 만약, 코드 작성시 필요한 자바 패키지를 자동 으로 임포트하고자 한다면 Source > Organize Imports를 클릭하면 된다. (control-Shift-O) // 뷰를 인플레이트 한다. set. Content. View(R. layout. main); // UI 위젯들에 대한 레퍼런스를 얻는다. List. View my. List. View = (List. View)find. View. By. Id(R. id. my. List. View); final Edit. Text my. Edit. Text = (Edit. Text)find. View. By. Id(R. id. my. Edit. Text); // 해야 할 일을 담기위한 배열 리스트(Array. List) 생성 final Array. List<String> todo. Items = new Array. List<String>(); // 이 배열을 리스트 뷰와 바인드하기 위한 Array. Adapter 생성 final Array. Adapter<String> aa; aa = new Array. Adapter<String>(this, android. R. layout. simple_list_item_1, todo. Items); // 이 배열 어뎁터를 리스트 뷰와 바인드한다. my. List. View. set. Adapter(aa); } // To. Do. List. java import android. view. Key. Event; // 이 배열 어뎁터를 리스트 뷰와 바인드한다. my. List. View. set. Adapter(aa); my. Edit. Text. set. On. Key. Listener(new On. Key. Listener() { public boolean on. Key(View v, int key. Code, Key. Event event) { if (event. get. Action() == Key. Event. ACTION_DOWN) { todo. Items. add(0, my. Edit. Text. get. Text(). to. String()); aa. notify. Data. Set. Changed(); my. Edit. Text. set. Text(""); return true; } return false; } }); Android Application Development 38
- Slides: 39