안드로이드와 이클립스 소스 연동

http://www.androidpub.com/1090693 : souce를 이클립스에서 바로 볼 수 있는 방법
http://blog.naver.com/jang2818?Redirect=Log&logNo=20078863663


-------------------------------------------------------------------------------

이클립스 단축 키 및 기능 모음

Eclipse 팁 #1 (코드 Style 설정)


팀 프로젝트를 진행할때 개발자별로 Coding Style이 달라서 고생하는 경우가 많습니다.
이를 위해 Eclipse는 코드 형식화를 지원하는데요,

아래와 같이 코딩 규칙을 위해바는 코드가 있다고 가정합시다.


해당 코드 위에서 [ Ctrl+Shift+F ] 키만 누르면 아래와 같이 코드가 이쁘게 정리됩니다.


이는 Eclipse에서 설정된 Code Formatter의 설정에 따른 것입니다.
프로젝트에서 개발된 모든 코드에 같은 코딩 규칙을 적용하고 싶다면..
결정된 Coding Convention에 따라 Code Formatter의 설정을 바꾼 다음,
그것을 XML 파일로 Export하고, 개발자에게 Import 시켜 적용하도록 하면 된답니다.

아래 그림은 Windows - Preferences 에서 "Java - Code Style - Code Formatter"를
선택했을 때 나오는 그림입니다.
Eclipse 3.0은 기본적으로 2가지 코드 형식을 기본적으로 내장하고 있습니다.


Java Conventions를 선택하고, Show.. 버튼을 누르면 해당 설정을 커스터마이징 할 수 있습니다.
탭 사이즈와 괄호의 위치 등 모든 것을 변경할 수 있습니다.

Eclipse 팁 #2 (Import문 정리)


개발할 때 어떤 기능을 구현하기 위해 특정 라이브러리를 import 시켜놓고,
그 기능이 필요없어져서 삭제한 다음에도 import문은 그대로 두는 경우가 많습니다.

그때 Eclipse가 제공하는 Organize import 기능은 아주 유용한데요..
아래와 같이 사용되지 않는 라이브러리를 import한 경우 Eclipse는 앞에 전구를 키고 표시해줍니다.
이때 [ Ctrl+Shift+O ] 버튼을 누르면 사용하지 않는 모든 import 문이 정리됩니다. 아래와 같이 깨끗하게 말이죠.


또 한가지 유용한 기능은 같은 패키지 내에서 여러 개의 클래스를 import할 경우입니다.
예를 들어 한 패키지 내에서 4개 이상의 클래스를 import 한다면,
그것을 *로 합쳐서 표시하도록 하고 싶을 때가 있습니다.
그럴 때는 window - preference 로 가서 java - code style - organize import에서
Number of imports needs for .*의 수를 4로 해놓으면,
같은 패키지에서 4개이상의 클래스가 임포트되면 *로 합쳐서 표시해줍니다.
(Apply 버튼 바로 위에 그 항목이 있습니다.)


Eclipse 팁 #3 (영역별 주석처리)


여러 줄에 걸쳐 있는 코드를 주석 처리하고 싶은데,
주석 처리하고자 하는 영역 내에 /* */가 있을 경우 참 곤란하시죠?

일일이 // 를 앞에 붙이려니 얼마나 손가락이 빠른지를 테스트하는거 같구.. ^^*
그럴 때 주석처리할 영역을 선택 한 다음 [ Ctrl+/ ] 를 눌러보세요.
아래와 같이 자동으로 해당 영역을 주석으로 만들어줍니다.
주석을 해제하고 싶다면 다시 한번 더 [ Ctrl+/ ]를 눌러주면 됩니다.


Eclipse 팁 #4 (에디터칸이동)


실제 프로젝트를 작업하다 보면 한번에 열어놓은 파일이 30개가 넘는 것은 기본이죠?
그때 해당 파일들 사이를 열려진 윈도우를 [ Alt+Tab ] 을 이용해서

이동하는 것 같은 기능이 있다면 편할겁니다.
그러한 단축키가 [ Ctrl+F6 ] 입니다.
그 키를 누르면 화면 중앙에 아래와 같은 에디터 이동 화면이 뜹니다


바로 이전으로 이동할 때는 [ Ctrl+F6 ]이 편하지만,
여러 개 중 하나를 이동할 때는 [ Ctrl+F6 ]을 누른 후,

[Ctrl+화살표] 를 이용해서 원하는 에디터로 이동하는 것이 편합니다.

Eclipse 팁 #6 (줄번호 표시 및 줄 이동하기)


Eclipse의 기본 설정에 라인 번호는 표시되지 않도록 되어 있습니다.
디버깅할 때 특정 라인에 에러가 있음을 확인했는데, 일일이 줄을 세어가면서 이동할 수도 없구..
그때 해당 라인으로 이동하기 위한 단축키가 [ Ctrl+L ] 입니다.
윈도우와 같이 Ctrl+G 로 단축키를 변경해서 쓰시는 것도 좋을 듯 합니다.

아예 줄번호가 항상 표시되도록 하고 싶다면 window - preference 에서,
Java - Editor로 이동한 다음 "Show line numbers"를 체크해두시면 됩니다.

Eclipse 팁 #7 (변경사항 추적하기)


변경 사항을 추적하고자 하는 파일을 PackageExplorer에서 선택 후,
오른쪽 버튼을 눌러 컨텍스트 메뉴에서 [ compare with Local History ] 선택합니다.


시간대 별로 이전의 작업 결과를 보실 수 있습니다.
만일 이전의 코드로 되돌아가고 싶다면, 같은 방법으로 파일의 컨텍스트 메뉴에서
[ Replace with ] 를 선택하고, [ Local History ]에서 변경하면 됩니다.


Eclipse 팁 #8 (Javadoc 문서생성 )


JavaDoc 형태의 주석으로 소스코드 문서화가 된 상태라고 가정하겠습니다.
Project 메뉴의 [ Generate Javadoc... ] 기능을 실행하면
간편한 마법사의 지원을 통해 Javadoc 문서를 생성할 수 있습니다.

일반적으로 프로젝트 루트 밑에 doc 이란 폴더 안에 JavaDoc으로 생성된 API 문서를 포함합니다.


생성될 API 문서에 포함시킬 정보를 선택하는 것이 마법사의 다음 단계입니다.
Finish 버튼을 누르면 Package Explorer에 아래와 같이 API 문서가 생성된 것을 확인할 수 있습니다.

Eclipse 팁 #9 (전체프로젝트 ZIP 백업)


전체 프로젝트를 백업하기 위해 압축을 해야 할때 유용한 기능입니다.
File 메뉴의 Export 기능을 실행하면 아래와 같은 윈도우가 뜹니다.


선택요소 중에서 ZIP 파일을 선택합니다.
다음 화면은 백업할 요소들을 선택하는 것입니다.
일반적으로 자동 생성되는 JavaDoc 문서나 Classes 파일들은 백업하지 않습니다.
적당한 백업 파일 이름과 위치를 결정하고 Finish 버튼을 누르면 백업이 완료됩니다.
 

[출처] 이클립스 팁 모음|작성자 메멘토



이클립스에서 유용한 단축키

----- 소스 네비게이션 -----

Ctrl + 마우스커서(혹은 F3) : 클래스나 메소드 혹은 멤버를 상세하게 검색하고자 할때

Alt + LeftAlt + Right : 이후이전

Ctrl + O : 해당 소스의 메소드 리스트를 확인하려 할때

F4 : 클래스명을 선택하고 누르면 해당 클래스의 Hierarchy 를 볼 수 있다.


Alt + <-(->) : 이전(다음) 작업 화면

 

----- 문자열 찾기 -----

Ctrl + K : 찾고자 하는 문자열을 블럭으로 설정한 후 키를 누른다.

Ctrl + Shift + K : 역으로 찾고자 하는 문자열을 찾아감.

Ctrl + J : 입력하면서 찾을 수 있음.

Ctrl + Shift + J : 입력하면서 거꾸로 찾아갈 수 있음.

Ctrl + F : 기본적으로 찾기

 

----- 소스 편집 -----

Ctrl + Space : 입력 보조장치(Content Assistance) 강제 호출 => 입력하는 도중엔 언제라도 강제 호출 가능하다.

F2 : 컴파일 에러의 빨간줄에 커서를 갖져다가 이 키를 누르면 에러의 원인에 대한 힌트를 제공한다.

Ctrl + L : 원하는 소스 라인으로 이동

   로컬 히스토리 기능을 이용하면 이전에 편집했던 내용으로 변환이 가능하다.

Ctrl + Shift + Space : 메소드의 가로안에 커서를 놓고 이 키를 누르면 파라미터 타입 힌트를 볼 수 있다.

Ctrl + D : 한줄 삭제

Ctrl + W : 파일 닫기

Ctrl + I : 들여쓰기 자동 수정

Ctrl + Shift + / : 블록 주석(/* */)

Ctrl + Shift + \ : 블록 주석 제거

Ctrl + / : 여러줄이 한꺼번에 주석처리됨주석 해제하려면 반대로 하면 된다.

Alt + Up(Down) : 위(아래)줄과 바꾸기

Alt + Shift + 방향키 : 블록 선택하기

Ctrl + Shift + Space : 메소드의 파라메터 목록 보기

Ctrl + Shift + O : 자동으로 import 하기

Ctrl + Shift + F4 : 열린 파일 모두 닫기

Ctrl + M : 전체화면 토글

Ctrl + Alt + Up(Down) : 한줄(블럭복사

Ctrl + , or . : 다음 annotation(에러워닝북마크 가능)으로 점프

Ctrl + 1 : 퀵 픽스

F3 : 선언된 변수로 이동, 메소드 정의부로 이동

Ctrl + T : 하이어라키 �b업 창 띄우기(인터페이스 구현 클래스간 이동시 편리)

Ctrl + O : 메소드나 필드 이동하기

Ctrl + F6 : 창간 전환, UltraEdit  Editplus  Ctrl + Tab 과 같은 기능

 

----- 템플릿 사용 -----

sysout 입력한 후 Ctrl + Space 하면 System.out.println(); 으로 바뀐다.

try 입력한 후 Ctrl + Space 하면 try-catch 문이 완성된다.

for 입력한 후 Ctrl + Space 하면 여러가지 for 문을 완성할 수 있다.

템플릿을 수정하거나 추가하려면 환경설정/자바/편집기/템플릿 에서 할 수 있다.

 

----- 메소드 쉽게 생성하기 -----

클래스의 멤버를 일단 먼저 생성한다.

override 메소드를 구현하려면, 소스->메소드대체/구현 에서 해당 메소드를 체크한다.

기타 클래스의 멤버가 클래스의 오브젝트라면, 소스->위임메소드 생성에서 메소드를 선택한다.

 

----- organize import -----

자바파일을 여러개 선택한 후 소스->가져오기 체계화 해주면 모두 적용된다.

 

----- 소스 코드 형식 및 공통 주석 설정 -----

환경설정 -> 자바 -> 코드 스타일 -> 코드 포멧터 -> 가져오기 -> 프로파일.xml 을 불러다가 쓰면 된다.

또한 다수의 자바파일에 프로파일을 적용하려면 패키지 탐색기에서 패키지를 선택한 후 소스 -> 형식화를 선택하면 된다.

환경설정 -> 자바 -> 코드 스타일 -> 코드 템플리트 -> 가져오기 -> 템플리트.xml 을 불러다가 쓰면 된다.

 

----- 에디터 변환 -----

에디터가 여러 파일을 열어서 작업중일때 Ctrl + F6 키를 누르면 여러파일명이 나오고 F6키를 계속 누르면 아래로

Ctrl + Shift + F6 키를 누르면 위로 커서가 움직인다.

Ctrl + F7 : 뷰간 전환

Ctrl + F8 : 퍼스펙티브간 전환

F12 : 에디터로 포커스 위치

 

 

 

 

 

이클립스 자주쓰는 단축키 -

 

Ctrl + / : 주석 처리 - 한 라인/블록에 대해 주석 처리 (추가 및 제거)

Ctrl + L : 특정 라인으로 이동

Ctrl + F6 : Editor 창간의 이동

Ctrl + F7 : View 이동 메뉴

Ctrl + F8 : Prespectives 이동 메뉴

Ctrl + D : 한라인 삭제 - 커서가 위치한 라인 전체를 삭제 한다.

Ctrl + J : Incremental find 이클립스 하단 상태 표시줄에 Incremental find 라고 표시되어 한 글자자씩 누를 때 마다 코드내의 일치하는 문자열로 이동 , 다시 Ctrl + J 를 누르면 그 문자열과 일치 하는 부분을 위/아래 방향키로 탐색이 가능하다.

Ctrl + N : 새로운 파일 / 프로젝트 생성

Ctrl + 1 (빠른교정) - 문 맥에 맞게 소스 교정을 도와 준다변수를 선언하지 않고 썼을경우 빨간색 에러 표시되는데 이 단축키를 적용하면 변수에 맞는 선언이 추가 되도록 메뉴가 나타난다.

Ctrl + 0 : 클래스 구조를 트리로 보기

Ctrl + Space :  Cotent Assist - 소스 구문에서 사용 가능한 메소드멤버들의 리스트 메뉴를 보여준다.

Ctrl + PageUp , Ctrl + PageDown : Edit 창 좌우 이동 - Edit 창이 여러개 띄워져 있을경우 Edit 창간의 이동 한다.

Ctrl + Shift + Down : 클래스 내에서 다음 멤버로 이동

Ctrl + Shift + M : 해당 객체의 Import 문을 자동 생성 - import 추가 할 객체에 커서를 위치 시키고 단축키를 누르면 자동적으로 import 문이 생성

Ctrl + Shift + O : import 문을 자동 생성 - 전체 소스 구문에서 import 안된 클래스의 import 문을 생성해 준다.

Ctrl + Shift + G : 해당 메서드 / 필드를 쓰이는 곳을 표시 - View 영역에 Search 탭에 해당 메서드 / 필드를 사용하는 클래스를 표시 해준다.

Alt + Shift + R : Refactoring (이름변경) - Refactoing 으로 전체 소스에서 이름변경에 의한 참조 정보를 변경해 준다.

F3 선언 위치로 이동

F11 : 디버깅 시작

F8 : 디버깅 계속

F6 : 디버깅 한줄씩 실행(step over)

F5 : 디버깅 한줄씩 실행 함수 내부로 들어감 (step into)

F12 : Editor 창으로 이동 (Debugging 등 자동적으로 포커스가 이동 됐을경우 편리)

Alt + Up , Alt + Down : 줄 바꿈 - 해당 라인을 위 / 아래로 이동 시킨다.

Alt + Shift + S : Source Menu - 소스메뉴 (Import 추가 , Comment 추가 , 각종 Generator 메뉴가 나타난다.

Alt + Shift + Up : 블록설정 - 소스 코드를 블록 단위로 설정해 준다.

Alt + Shift + Down : 블록해제 - 소스 코드를 블록 단위로 해제한다.

Alt + Shift + J : 주석 생성 - 해당 메서드/클래스에 대한 주석을 템플릿을 생성해 준다.

sysout + (Ctrl + Space) : System.out.println() 문장 삽입 - 코드 템플릿을 이용해서 소스 구문을 추가

(Windows -> Preferences -> JAVA -> Editor -> Templates 에서 자주 쓰는 소스 구문을 추가시키면 <템플릿 이름> + (Ctrl + Space) 로 소스 문장을 완성 시킬 수 있다.)

Alt + Shift + Z : Surround With 메뉴 - try / catch 문이나 for , do , while 등을 해당 블록에 감싸주는 메뉴가 나타난다.

Ctrl + Shift + F : 코드 포맷팅 - 코드 내용을 문법 템플릿에 맞게 포맷팅(들여쓰기해준다.

Ctrl + Alt + Down한줄 복사후 아래에 복사 넣기 - Copy&Paste 대체하는 단축키커서가 위치한 라인을 복사해 밑줄에 생성해 준다.

Ctrl + Shift +X : 대문자로 변환

Ctrl + Shift + Y : 소문자로 변환

Ctrl + Shift + L : 모든 단축키의 내용을 표시해준다.

Ctrl + Shift + B : 현재 커서 라인에 Break point 설정

Ctrl + Shift + T : 클래스 찾기


[출처]  http://nuninaya.tistory.com/578 
Posted by DANIEL.H.KIM

안드로이드에서, 이미지 버튼과 관련되서 찾아둔 페이지들 :)

http://blog.naver.com/PostView.nhn?blogId=davincigo&logNo=60125482471 : 안드로이드 개발과 관련된 모든 이슈에 관한 모음 !! (매우 유용!)

http://dreamchallenger.blogspot.com/2011/02/focus.html : 안드로이드 focus 처리 방법
http://surprisen.egloos.com/2537516 : 만든 이미지 버튼에, 이미지를 씌우고 기능을 추가하는 코드
http://reipielr.tistory.com/40 : 안드로이드 서비스 종류 모음 및 부르는 방법들
http://jusung.springnote.com/pages/5626531 : AIDL 을 이용한 Process와 service 사이에 통신
http://shinluckyarchive.tistory.com/473 : ImageView에서 Selector가 안 먹는 경우 실수 포인트
http://androidhuman.tistory.com/ : 커니의 안드로이드 사이트 : 기본 소스와 개념들 모음
http://joojoo.com/382 : 기본적 인텐트 생성과 이에 따른 activity 생성 주기의 개념도 설명
http://binsoopark.tistory.com/56 : getSystemService()를 사용하여 서비스를 얻어 오는 방법
http://sites.google.com/site/endihom/home/programming-language/android/article/layout-tricks-stubs : 레이아웃 중 viewstubs를 사용하는 방법 설명
http://inamatrix.tistory.com/34 : 일반적 안드로이드 상에서 Layout 구성에 관한 설명

http://funfly.tistory.com/168
: 안드로이드에서 버튼을 추가하여 애플리케이션 종료 시키는 방법 설명
http://www.androidpub.com/198262 : 안드로이드에서 응용 어플 종료 시 체크해서 볼 부분

http://h2110.tistory.com/43 : Notification 커스터마이징 하는 방법


http://graynote.tistory.com/entry/Archos-5-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%ED%83%80%EB%B8%94%EB%A0%9B-%EB%B0%9C%ED%91%9C
: 안드로이드 Archos 5 인터넷 타블렛 발표 관련 소식

http://woosa7.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-Notification
: Notification 관련 소스 설명

http://blog.daum.net/hopefullife/80 : 안드로이드 상태 알림 처리 코드

http://blog.naver.com/ajslaos : 안드로이드 개발 관련 개발자 경험담


http://psjin14.tistory.com/entry/AndroidBack-Button-%EB%8F%99%EC%9E%91-API
: 안드로이드 back button 동작 api 방법


http://baeksupervisor.tistory.com/95 : 안드로이드 UI 에서 멀티 터치를 코드에 넣어 싱글 터치를 완벽히 구현하는 방법

http://tigerwoods.tistory.com/22 : 안드로이드에서 pop up 메세지 구현하는 방법
http://tigerwoods.tistory.com/13 : 안드로이드에서 ListView, Spinner, Grid 의 사용 방법들
http://www.androidpub.com/2096 : 안드로이드에서 나인 패치(.9.png) 에 대한 개념 설명

http://blog.daum.net/hopefullife/105 : 안드로이드의 커스텀 레이아웃과 R.styleable 관련 설명


http://www.androidpub.com/17476 : 안드로이드 <array> 와 <string-array>와의 차이

http://www.androidpub.com/153850 : 안드로이드에서 string을 int or float 로 변환 방법

http://rsequence.com/android_blog/node/66  : 안드로이드에서 preference 응용 방법

http://underclub.tistory.com/299 : 안드로이드에서 레이아웃 리소스 ID 선언 법

http://androidhuman.tistory.com/261 : 커니의 안드로이드 이야기 : 인텐트 기본 개념

http://amethyst.springnote.com/pages/4100937
: 안드로이드 액션과 카테고리 모음 설명
http://chihun80.springnote.com/pages/5349243


http://park1020.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-event-dispatch-%EA%B3%BC%EC%A0%95 : 안드로이드 dispatch 과정에 관한 글


http://android-developers.blogspot.com/2009/01/avoiding-memory-leaks.html : 안드로이드 메모릭 에 관한 글 중요 참고해서 읽어 볼것
http://developer.android.com/resources/articles/layout-tricks-reuse.html : 안드로이드 메모릭 에 관한 글 중요 참고해서 읽어 볼것


http://www.androidpub.com/366548 : OnDraw에서 invalidate()의 개념
http://micropilot.tistory.com/entry/Android-ViewGroupdispatchDraw#recentTrackback : 안드로이드에서 ViewGruop의 dispatch 를 override 할때의 중요 개념

http://blog.naver.com/mygirl2?Redirect=Log&logNo=40108007949 : 안드로이드의 ViewGroup의 Drawing oder 변경 방법

http://androidnote.co.kr/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-Context%EB%9E%80-%EA%B8%B0%EB%8A%A5%EA%B3%BC-%EC%82%AC%EC%9A%A9-%EB%B0%A9%EB%B2%95
: 안드로이드 콘텍스트 뷰 의 이해와 사용 방법

http://androidhuman.tistory.com/entry/%ED%99%88%EC%8A%A4%ED%81%AC%EB%A6%B0-%EC%9C%84%EC%A0%AF%EC%9D%84-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B4%EC%9E%90-%EB%B2%84%ED%8A%BC-%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0 : 홈스크린 위젯을 만들때, 버튼을 추가하는 방법


http://blog.naver.com/PostView.nhn?blogId=lswcharming&logNo=30094901958 : 안드로이드 저장된 이미지들을 불러와 이미지 갤러리를 만드는 방법

http://www.androidpub.com/43259 : viewstub 사용시 각 view의 구분 방법

http://comxp.tistory.com/64 : launcher의 shortcut 생성방법
http://rsequence.com/android_blog/node/137 : 홈스크린에서 Shorcut 을 만드는 방법

http://blog.daum.net/_blog/BlogTypeView.do?blogid=0PtVB&articleno=8#ajax_history_home : 안드로이드의 log 의 자동 저장 방법


http://javaexpert.tistory.com/192 : 안드로이드의 ImageView의 레이아웃의 개념 : 매무 좋다.
http://godofcode.tistory.com/353 : 안드로이드 마진 패딩 주기
http://www.winapi.co.kr/android/book/3-2-5.htm


http://blog.naver.com/PostView.nhn?blogId=redwave102&logNo=80117890630 : 안드로이드 어플 개발 텍스트 넣기

http://www.androidpub.com/745110 : 소스상에서 텍스트의 color를 변경하기


http://www.androes.com/59 : 안드로이드 외부 이미지들을 적용해서 활용하는 여러 방안

http://bunhere.tistory.com/211 안드로이드 해상도

Posted by DANIEL.H.KIM

[작업환경]

 - 운영체제 :  Ubuntu 10.10
 - IDE : Eclipase 3.6(Hellios)


1. Eclipse에 플러그인 설치
 
- Help > Install New Softare. Add Site
   - Add Site
      - Location : https://dl-ssl.google.com/android/eclipse/
      - NAME : ADT


2. Android SDK 설치
  - 싸이트 :  http://developer.android.com/sdk
  - Linux 선택후 약관 동의 다운로드
  - 압축해제


3. Eclipse에서 Android SDK설정
 - 이클립스의 메뉴 Windows/Preference 실행
 - 왼쪽 탭에서 Android 선택
  - Browse를 한후 SDK를 설치한 디렉토리 선택
  - Apply후 OK


4. 안드로이드 버젼 다운로드
  -각 버전별 에뮬레이터 및 SDK를 별도로 다운로드
  - 이클립스의 메뉴 Windows/Android sdk manager 선택후, 각각 업데이트 (라이센스 동의후)


출처 :
sinsu.egloos.com/2494683

Posted by DANIEL.H.KIM
1. 리눅스 Ubuntu 패키지 설치
가벼운 virtualbox(oracle)을 사용 아니면 vmware를 구해서 설치 혹은 리눅스를 직접 설치

2. 리눅스가 모두 설치되면 루트 passwd를 설정
$ sudo passwd root

3. 만약 설치된 리눅스 Desktop에서 직접 작업을 원하시지 않는다면 ssh를 설치
ssh 설치 방법은
$ sudo apt-get install ssh

4. 안드로이드 설치 환경 준비
- 기본적으로 다음과 같은 package를 인스톨
- 안드로이드는 Phython 2.4 이상이 요구 (단, 일반 현재 나오는 리눅스에는 2.4 이상이 포함)
$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev
build-essential zip curl
$ sudo apt-get install valgrind

4.1 자바 설치
- JDK 5.0, Update 12 또는 그 이상이 요구됩니다. (android froyo(2.2) 버전에서는 1.5 버전 사용추천 -> @override 옵션에서 에러가 나기 때문 (참고 : 안드로이드 인사이드 책)
$ sudo apt-get install sun-java5-jdk (자바 설치)
$ sudo update-java-alternatives -l (자바 버전화인)
$ sudo update-java-alternatives -s java-1.5.0-sun (여러개의 자바 설치가 된 경우 1.5.0으로 변경)
$ java -version (자바 버전 확인)
-------------------------------------------------------------------------------------
(자바 경로 설정) , which java -> 자바가 설치된 홈 폴더의 위치를 찾는 명령
$ export JAVA_HOME=/usr/bin/java
$ export ANDROID_JAVA_HOME=$JAVA_HOME
$ export PATH=$JAVA_HOME/bin:$PATH

5. Git 1.5.4 또는 그 이상 버전, 그리고 Repo 설치
 - 환경설정을 반영하기 위해 다시 로그인 하시던가 아니면 터미날을 종료했다 다시 실행(추천)
$ cd ~
$ mkdir bin
$ export PATH=$PATH:~/bin
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo

$ mkdir mydroid
$ cd mydroid
$ repo init -u git://android.git.kernel.org/platform/manifest.git -b froyo
(-b는 버전 옵션, froyo를 설치 하겠다는 의미)
여기까지 실행 후, repo initialized in /home/<your_home>/mydroid 란 메시지 출력
-> 제 경우는, /home/<your_home> 여기에 initialized 되서, 아무 생각 없이 repo sync로 소스를 받았다가, 제가 만들어 둔 myandroid 안에 안 깔려서 계속 찾아 다녔습니다.
ls -a 명령으로 .repo 폴더가 어디에 initialized 되었는지 먼저 확인 하시면, 그 폴더에 소스들이 다운로드 되니, 참고 하세요-

이렇게 되면 환경설정은 이제 마무리!


5. 안드로이드 소스 다운로드
$ repo sync

6. 안드로이드 빌드 하기
$ make
(일반 빌드는 그냥 make , 타겟팅을 따로 설정해야 하는 경우는 복잡!)

참고 :
   - 이 과정을 수행하는 동안 zlib.h error가 발생할 수 있습니다.
   - 이 경우에는 아래와 같이 zlibb1g-dev를 설치하시고 계속 make를 수행하면 됩니다.
$ sudo apt-get install zlib1g-dev
$ make

   - 이 과정을 수행하는 동안 -lncurses error가 발생할 수 있습니다.
   - 이 경우에는 아래와 같이 libncurses5-dev를 설치하시고 계속 make를 수행하면 됩니다.
$ sudo apt-get install libncurses5-dev
$ make

7. 결과 확인하기
out 디렉토리에 build된 안드로이드 full package가 위치하게 됩니다.
$ cd out

8. Kernel 별도로 빌드하기
- msm
$ cd ~/mydroid/kernel
$ make msm_defconfig ARCH=arm
$ make ARCH=arm
CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi-
- goldfish(1.5에서 merge됨, 따라서 msm_defconfig로 변경)
$ cd ~/mydroid/kernel
$ make goldfish_defconfig ARCH=arm
$ make ARCH=arm
CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi-



테스트
1. 먼저 mydroid 의 out directory에서 아래의 세가지 image를
android sdk가 설치된 desktop에 download를 합니다.
~mydroid/out/target/product/generic/ramdisk.img
~mydroid/out/target/product/generic/system.img
~mydroid/out/target/product/generic/userdata.img
2. android sdk 1.0 이 설치된 desktop의 아래의 directory에서 ramdisk.img, system.img, use
rdata.img를 임시로 다른 곳으로 저장한 뒤에
android-sdk-windows-1.0_r1/tools/lib/images
3. 위에서 다운로운한 세가지 img 파일을 위의 디렉토리에 위치지운 후,
android-sdk-windows-1.0_r1/tools/emulator.exe를 실행
4. 만약 emualor가 정상적으로 실행되고, 내부 app. 들이 정상적으로 작동한다면,
안드로이드 source는 정상적으로 build 되었다고 판단!


Posted by DANIEL.H.KIM
이클립스에서 아래와 같은 에러가 발생할 경우 조치 방법

Your project contains error(s), please fix them before running your application.


이런 메세지 발생시 왼쪽 트리에 x표가 생기면서 프로젝트 실행이 되지 않는다.

이클립스 상단 [Project > Clean] 을 선택


그럼 왼쪽 트리에서 x표가 사라지면서 정상적으로 작동된다.

추측 :

Clean이 하는 역활은 프로젝트가 가지고 있던 여러 property들을 초기화 하는 듯 하다.

또 다른 웹상에 제기된 방법 :

현재 작업중인 Project에서 마우스 오른쪽 클릭 -> Android tool 선택 -> Fix project property 를 선택 (현재 작업중인 프로젝트가 필요로 하는 경로등을 고쳐준다)


추가 :

Android Example Sample들을 실행시켜 볼 때, 프로젝트 Name을 바꾸면 x 표시가 나면서 실행이 안되는 것을 볼 수 있다. 이는 아마도, 패스 상으로 정해져 있는 것이 아닐까?(추측) - 소스 코드를 선택 할 경우, 그냥 프로젝트 이름은 변경하지 말고 입력되는 대로 놔두자!

참조 :

안드로이드 샘플 예제 코드 실행 방법 참조
http://honeydeveloper.springnote.com/pages/4429375

안드로이드 AVD 의 경우 (Android Virtual Device) 첫화면은 부팅, 그리고 시간이 지나면 부팅되고 예제가 실행 되는 것을 볼 수 있다!
(초보자들은 바로 나온다고 생각 할 수 있다. -> 나 같은! 예전 애뮬레이터를 돌려봤던 사람이라면!)

부팅될때까지 기다리자!



Posted by DANIEL.H.KIM