레이블이 ADT인 게시물을 표시합니다. 모든 게시물 표시
레이블이 ADT인 게시물을 표시합니다. 모든 게시물 표시

2011년 8월 2일 화요일

안드로이드 개발환경 구축(SDK 2.1)


사전준비사항
JDK1.6
eclipse ganymede

1. 이클립스 실행

2. Android SDK설치
http://developer.android.com/sdk 에서 SDK 다운로드 (2010-02-10 현재 최신버전은 2.1)
다운받은 압축파일을 원하는 디렉토리 푼다.
압축푼 디렉토리 아래에 있는 tools 디렉토리를 PATH에 추가

3. Eclipse Plugin 설치
Help > Software Updates... 누르고 Available Software 탭에서 Add Site... 를 클릭
Location에 아래 주소를 입력하고 OK 클릭
https://dl-ssl.google.com/android/eclipse/
창이 닫히면 좀전에 추가된 google.com 주소를 확장해서 "Developer Tools" 체크하고 Install 클릭

4. Installing SDK Components
이클립스를 실행하고 Window > Preferences 메뉴에서 Android 선택하고 (2)에서 저장한 디렉토리로 SDK Location을 지정 -> OK
Window >Android SDK and AVD Manager 메뉴에서 Available Components 클릭
우측항목을 체크하고 Install Selected -> 설치

5. HelloWorld
(1) Create an AVD
쉘에서 다음 명령어를 실행 (Android Virtual Device (AVD)를 생성)
android create avd --target 2 --name my_avd

(2) Create the Project
File > New > Project 실행

- Android Project 선택하고 Next

- New Android Project 화면에 아래 내용을 입력하고 Finish
◦Project name: HelloAndroid
◦Application name: Hello, Android
◦Package name: com.example.helloandroid (or your own private namespace)
◦Create Activity: HelloAndroid
◦Min SDK Version: 2

(3) Construct the UI
HelloAndroid > src > com.example.helloandroid 에서 HelloAndroid.java 파일을 열고 내용을 아래와 같이 변경
package com.android.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
   
/** Called when the activity is first created. */
   
@Override
   
public void onCreate(Bundle savedInstanceState) {
       
super.onCreate(savedInstanceState);
       
TextView tv = new TextView(this);
       tv
.setText("Hello, Android");
       setContentView
(tv);

   
}
}


(4) Run the Code
현재 Perspective가 DDMS 아니라면 Window > Open Perspective 선택하고 DDMS로 변경
Run > Run Configurations  메뉴를 선택하고 "Android Application" 선택
좌측상단의 New 아이콘을 클릭하고 Name: HelloAndroid, Project: HelloAndroid 입력
우측 하단의 Run 실행 (졸라 오래 걸린다 -.-)

(5) Upgrade the UI to an XML Layout
3에서는 코드로 레이아웃을 지정했지만 xml 파일을 이용해서도 가능하다.
res/layout/main.xml 파일을 열고 에디터 아래 main.xml 탭을 클릭하고 아래와 같이 코드 수정

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
</LinearLayout>

res/strings/main.xml 파일도 아래와 같이 수정
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello, Android! I am a string resource!</string>
    <string name="app_name">Hello, Android</string>
</resources>

HelloAndroid.java 파일도 아래와 같이 변경
package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;

public class HelloAndroid extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

실행!

(6) Debug Your Project
HelloWorld.java 파일을 아래와 같이 수정해고 실행

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Object o = null;
        o.toString();
        setContentView(R.layout.main);
    }

NullPointException이 발생할 것이다. 이제 이 코드를 이용해 디버깅해 보자.
"Force Quit" 버튼을 누른뒤 에뮬레이터를 종료한다.

좌측 바에 오른쪽 버튼을 클릭하고 break point를 하나 만들고 디버그 모드로 실행
Run > Debug History > Hello, Android

이클립스에서 자바 어플리케이션 개발할 때 처럼 디버깅이 가능하다.

(7) Creating the Project Without Eclipse
패스..


** 참고 URL
- Install the ADT Plugin for Eclipse
http://developer.android.com/sdk/installing.html
- Adding SDK Components
http://developer.android.com/sdk/adding-components.html
- Android HelloWorld Tutirial
http://developer.android.com/resources/tutorials/hello-world.html