안드로이드 작업을 하다보면 레이아웃 XML파일이 아래 화면과 같이 design탭과 소스탭으로 표시되면서 레이아웃 작성화면이 보이지 않는 경우가 있습니다.

이클립스에는 원래 XML편집기가 여러개가 있는데, 간혹다가 이클립스가 Android Layout XML Editor로 열어야할 파일을 이클립스의 기본 XML 편집기로 열게 되는 경우입니다.




이 문제를 해결하려면 편집을 원하는 XML파일을 마우스 우클릭하여 Open With > Android Layout Editor를 선택하시면 됩니다.


저작자 표시 비영리 동일 조건 변경 허락

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

안드로이드 에뮬레이터는 정말이지 사람 속터지게 느립니다. 한번 실행버튼을 누르면 완전히 에뮬레이터가 부팅될 때 까지 3~5분 정도는 걸리는 듯 합니다.

그렇기 때문에 강의를 진행하면서도 안드로이드 핸드폰이 있는 분들은 가급적 핸드폰을 통해서 테스트를 하시도록 권해 드리고 있습니다.

이번에는 이클립스를 통한 실행을 에뮬레이터가 아닌 실제 단말기를 통해서 진행하는 과정에 대해서 소개해 보겠습니다.


안드로이드 단말 USB드라이버 설치

우선은 (Windows 운영체제에 한해서) 각 제조사에서 배포하는 안드로이드 USB 드라이버를 설치해야 합니다. 제조사별 드라이버 파일의 다운로드는 각 제조사 사이트를 참조하시기 바랍니다.


안드로이드 단말의 환경설정

USB연결을 통한 단말 디버깅 기능을 사용하기 위해서는 핸드폰에서 몇가지 설정을 해 주어야 합니다.
우선 PC와의 USB연결을 제거합니다. 핸드폰에서 "환경설정" 메뉴로 들어갑니다. 환경설정 메뉴 하위의 "응용프로그램"메뉴를 선택합니다.





응용 프로그램 페이지에 들어가면 우선 "알 수 없는 소스"항목에 대해서 체크가 되어 있어야 합니다.
안드로이드 폰은 구글 마켓을 통해서 다운로드 받는 프로그램을 제외한 모든 프로그램들을 "알 수 없는 소스"라고 인식합니다. (T-Store나 alleh Store등 역시 알 수 없는 소스 입니다.)
이클립스를 통해서 실행하는 프로그램이 "알 수 없는 소스"인 것은 두말할 필요가 없겠지요.

그 다음 맨 아래 있는 "개발"항목을 선택합니다.





페이지가 이동되면 "개발"페이지에 있는 체크박스들을 모두 체크합니다.
제조사에 따라서 "USB연결시 단말 화면이 꺼지지 않음"이라는 세가지 항목이 나타나는 경우가 있습니다.
아래 보이는 화면인 삼성 갤럭시S2의 화면입니다.

설정이 완료되면 화면을 빠져 나온 후에 USB를 통해서 PC와 연결합니다.
PC와 연결시 주의하실 점은 핸드폰에서 "USB저장소로 사용"활성화 되어 있으면 안된다는 것입니다.




이클립스에서의 실행

핸드폰이 연결된 후에 이클립스에서 RUN버튼을 누르면 다음과 같은 화면이 나타납니다.
에뮬레이터만 생성되어 있을 경우에는 구동중인 에뮬레이터가 보였지만, 핸드폰이 연결되면 연결된 핸드폰의 Serical Number가 함께 표시됩니다. 저 항목을 선택하고 "OK"버튼을 누르면 안드로이드 단말을 통해서 결과를 확인할 수 있습니다.



앞에서 진행했던 Hello World 예제를 단말기에서 실행한 모습입니다.





단말에서 실행한 후에 프로그램 목록을 살펴보면 조금전에 테스트한 항목이 설치되어 있는 것을 확인할 수 있습니다.





Run버튼 클릭시 Device Chooser 화면이 나타나지 않는 경우

간혹가다가 (사실은 꽤 자주) Run버튼을 클릭하였더니 아래와 같은 화면이 나타나지 않고 (단말기가 연결되어 있음에도 불구하고) 즉시 에뮬레이터가 구동되는 경우가 있습니다.



이 경우에는 이클립스의 설정이 유실되어서 그렇습니다.
이클립스 상에서 "Run > Run Configurations"메뉴를 선택합니다.
좌측의 메뉴 트리에서 "Android > 프로젝트이름"항목을 선택한 후에 화면 중앙에서 "Target"탭으로 이동합니다.



Target탭으로 이동하면 라디오 버튼이 두개 보입니다.
"Manual"이라는 버튼과 "Automatic"이라는 버튼입니다.
Device Chooser 창이 나타나지 않는 경우는 이 두개의 라디오버튼이 "Manual"로 지정되지 않은 경우입니다.

"Manual"로 지정되면 매 실행시마다 어떤 장치(혹은 에뮬레이터)를 통해서 실행할 것인지를 물어보기 위해서 Device Chooser 화면이 나타납니다.

"Automatic"으로 지정되면 실행시마다 지정된 에뮬레이터로만 구동됩니다. (실제 단말은 Automatic)지정이 안됩니다. "Automatic"으로 지정된 후에는 그 하단에 있는 에뮬레이터 목록중에서 한가지를 지정해 주어야 합니다.

만약 "Automatic"으로 지정되고 실행할 에뮬레이터가 지정되지 않으면 이클립스에서 "Run"버튼을 눌렀을 때 아무런 응답이 없는 경우가 있으니 주의하시기 바랍니다.

반대로 이야기한다면 "Run"버튼을 눌렀을 때 이클립스가 아무런 응답이 없다면 이곳을 확인해 보면 된다는 이야기 입니다. 

저작자 표시 비영리 동일 조건 변경 허락

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

이번 포스팅에서는 안드로이드 개발환경 셋팅 후에 첫번째 예제인 Hello World를 출력해 보는 과정에 대해서 소개해 보겠습니다. 이 포스팅의 목적은 안드로이드를 위한 새로운 프로젝트 생성 방법에 대한 이해에 있습니다. 


선행 작업

우선 이 포스팅에서 소개되는 내용을 확인하시기 위해서는 안드로이드의 개발환경이 설정되어 있어야 합니다. 또한 소스를 빌드해서 결과를 확인하기 위한 에뮬레이터가 필요합니다.

안드로이드의 개발환경을 구축하는 방법에 대해서는 다음의 포스팅을 참조하시기 바랍니다.
[Android TIP] 안드로이드 개발환경 설치하기 (for Windows)
[Android TIP] 안드로이드 개발환경 설치하기 (for Mac OS)

작업 결과물을 확인하기 위해서 에뮬레이터를 설정하는 방법은 다음의 포스팅을 참조하시기 바랍니다.
[Android TIP] 에뮬레이터 생성하기




안드로이드 프로젝트의 생성

이클립스에서 가장 왼쪽에 있는 툴바 아이콘이 "New"아이콘 입니다. 이 아이콘을 클릭합니다.




"New"아이콘을 클릭하면 "New"대화상자가 나타납니다. 화면의 중앙부에 있는 선택항목 중에서 "Android > Android Project"항목을 선택하고 "Next"를 누릅니다.



새로운 안드로이드 프로젝트의 이름을 지정하는 화면이 나타납니다.
"Project Name"은 이클립스상에서 이 작업을 구분하기 위한 단위 이름을 입력하는 공간입니다. 여기서는 "HelloWorld"라고 입력하겠습니다. 프로젝트 이름이 지정되면 "Next"버튼을 누릅니다.



안드로이드 프로젝트를 진행할 대상 버전을 지정합니다. 최상위 버전인 "Android 4.0.3"항목을 체크합니다.
체크를 한 다음 "Next"버튼을 누릅니다.



프로젝트 이름을 지정하고 나면 프로젝트의 정보를 입력하는 단계로 넘어가게 됩니다.
각각의 항목에 적절한 값을 입력한 후에 "Finish"버튼을 누르면 됩니다.
각 항목에 입력하는 값의 의미는 다음과 같습니다.
  1. Application Name : 이 프로그램의 이름을 지정합니다. 실제로 이 어플리케이션이 단말기에 설치되었을 경우에 단말기의 프로그램 목록에 표시되는 이름입니다. 한글로 지정해도 무관합니다.
  2. Package Name : 자바 패키지 이름입니다. 안드로이드는 OS에서 하나의 어플리케이션을 인식하는 단위가 패키지 단위가 됩니다. 그렇기 때문에 동일 패키지 이름이 설치하려는 단말기에 이미 존재한다면 설치가 진행되지 않습니다. (심지어 구글 마켓에 어플을 올릴 경우에도 다른 어플과 패키지 이름이 중복되면 등록이 거부됩니다.) 그러므로 패키지 이름은 가급적 고유한 이름을 지정해야 합니다.
    패키지 이름은 보유하고 있는 도메인의 역순.프로젝트이름(소문자)로 짓는것이 일반적입니다.
  3. Create Activity : 프로그램의 시작점이 되는 Main Class의 생성여부에 대한 결정과 메인 클래스의 이름을 짓는 부분입니다. 이 항목을 체크하지 않고 지나갈 경우 다시 생성하기 위해서는 꽤 번거로운 작업들을 진행해야 하므로 반드시 프로젝트 생성시에 지정해 주셔야 합니다.
  4. Minimun SDK : 이 프로그램을 구동할 수 있는 최소 안드로이드 버전값을 지정합니다. 아래 화면에서는 Android 2.1로 지정되어 있습니다. 이 의미는 이 어플이 (앞에서 지정한 대로) Android 4.0.3 버전을 대상으로 개발이 되지만 Android 2.1까지 지원하겠다라는 의미가 됩니다.

설정이 완료되면 "Finish"버튼을 눌러서 프로젝트 생성을 완료합니다.



프로젝트 설정이 완료되면 다음과 같이 이클립스상에 프로젝트가 생성됩니다.





이클립스에서 src > 패키지이름 > 메인클래스.java 파일을 열어보면 기본적으로 필요한 소스들이 작성이 되어 있는 것을 확인할 수 있습니다.







결과 확인

소스 수정 없이 바로 한번 실행해서 기본 모양을 확인해 보겠습니다.
안드로이드 에뮬레이터를 구동한 상태에서 이클립스에 있는 "Run"버튼을 누르면 프로그램이 에뮬레이터를 통해서 구동됩니다.

간혹가다가 에뮬레이터가 구동중인데도 새로 에뮬레이터가 뜨는 경우가 있습니다. 이럴 때는 그냥 그러려니 하면서 기존에 실행중이던 에뮬레이터를 종료하시면 됩니다.





"Android Device Chooser"라는 창이 나타나면서 구동중인 에뮬레이터의 목록이 나타납니다.
화면이 상하 두칸으로 나뉘어 있는데, 위쪽은 현재 구동중인 에뮬레이터의 목록이 나타납니다.
아래쪽은 구동되지 않고 있는 에뮬레이터가 타나납니다.
만약 현재 구동중인 에뮬레이터가 없다면 아래 화면에서 아래쪽 항목을 선택하고 "OK"버튼을 누르면 됩니다.



구동이 완료되면 에뮬레이터에 아래와 같이 실행 결과가 타나납니다.

저작자 표시 비영리 동일 조건 변경 허락

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

다른 플렛폼들의 경우에는 개발한 소스를 테스트하기 위한 에뮬레이터가 완제품 형태로 제공되지만 안드로이드의 경우에는 개발자가 직접 에뮬레이터를 생성해 주어야 합니다.

이번 포스팅에서는 안드로이드 에뮬레이터를 생성해 보도록 하겠습니다.
이 과정은 Window와 Mac에서 공통으로 적용되는 내용입니다.


안드로이드 에뮬레이터 (AVD)의 추가

우선 이클립스에서 "Android Virtual Device Manager"를 실행시켜야 합니다. 이클립스의 AVD Manager 아이콘을 클릭합니다. (아래의 화면을 참고하세요.)





"Android Virtual Device Manager"라는 창이 나타나면 새로운 에뮬레이터를 생성하기 위해서 좌측에 있는 "New"버튼을 클릭합니다.




아래 화면과 같이 "Create new Android Virtual Device"라는 창이 나타납니다.
아래 화면을 참고해서 값을 입력(혹은 선택)하세요.

Name : 에뮬레이터에 부여하는 이름입니다. 한글만 아니라면 편하게 작성할 수 있습니다.
Target : 에뮬레이터에 탑제될 안드로이드 운영체제의 버전입니다. 여기서는 최신 버전을 적용했습니다.
SD Card > Size : 에뮬레이터에 탑제될 SD카드의 용량을 지정합니다. 

나머지 항목을 기본값대로 지정하면 해상도가 WVGA800 (480x800) 사이즈인 에뮬레이터가 생성됩니다.



에뮬레이터가 생성되면 생성된 항목을 선택하고 "Start"버튼을 누르세요.



실행 확인창이 나타납니다. 그냥 "Launch"버튼을 누르시면 에뮬레이터가 구동됩니다.



에뮬레이터가 구동되면서 안드로이드 운영체제가 부팅됩니다. 이 화면에서 인내력을 요구합니다. 부팅... 상당히 느립니다.





부팅이 완료되고 나면 안드로이드 운영체제의 모습을 볼 수 있습니다.




에뮬레이터가 PC모니터를 벗어나는 경우

(주로 해상도가 작은 노트북에서 실행할 경우) 에뮬레이터가 컴퓨터의 모니터보다 커서 화면을 빠져 나가는 경우가 간혹 있습니다.

이 경우에는 에뮬레이터의 "Launch Options"에서 Sacle 값을 지정해서 해결할 수 있습니다.
아래 화면은 에뮬레이터를 시작할 때 나왔었던 확인창입니다. "Scale display to real size"체크박스를 체크하고 "Screen Size"란에 7이라고 입력한 후에 실행합니다. (1~10 / 값이 클수록 확대됨)

저작자 표시 비영리 동일 조건 변경 허락

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

이번 포스팅은 윈도우 운영체제에서 안드로이드를 개발하기 위한 개발환경을 설정하는 과정을 소개하고자 합니다. 이 블로그에 안드로이드 관련 글들이 은근히 올라와 있는 시점에서 뒤늦게 이렇게 안드로이드 설정관련 포스티을 올리는 까닭은 제가 진행하고 있는 강의에서의 보조교제로서 이 포스팅을 활용하기 위해서 입니다.

안드로이드의 개발환경 구축단계는 다음의 과정을 거쳐서 진행됩니다.
  1. JDK의 설치와 환경변수 설정
  2. Eclipse Classic 버전의 다운로드 및 설치
  3. Android SDK의 다운로드 및 설치
  4. Android Development Tool (ADT) 플러그인의 설치

여기서는 설치가 완료된 전체 패키지를 압축하여서 나중에 다른 환경에서도 압축만 풀면 즉시 안드로이드 개발을 진행할 수 있도록 만들겠습니다.



JDK의 설치와 환경변수 설정

안드로이드 역시 자바기반에서 진행되는 개발이니만큼 JDK의 설치및 설정이 필수 입니다. JDK의 다운로드 및 설치는 다음의 포스팅을 참조하시기 바랍니다.
[JAVA] 개발환경 준비하기 - JDK의 설치


이클립스의 다운로드 및 설치

안드로이드 개발 툴킷은 이클립스의 플러그인 형태로 제공됩니다. 그렇기 때문에 안드로이드 개발을 위해서는 Eclipse를 다운로드 받아서 설치해야 합니다. 이클립스는 http://www.eclipse.org에서 다운로드 받을 수 있습니다.

사이트에 접속한 후 상단 메뉴에서 "Download"를 클릭하여 다운로드 페이지로 이동합니다. 다운로드 페이지에 나열되는 패키지들 중에서 "Eclipse Classic"버전을 설치되어 있는 운영체제의 버전에 맞게 선택합니다.





운영체제에 맞는 버전을 선택하면 다운로드 링크가 제공되는 페이지로 이동합니다. 여기서 아래 화면을 참조하여 이클립스를 다운로드 받습니다.





이클립스는 설치 패키지가 아닌 압축파일의 형태로 제공됩니다. C드라이브에 eclipse+andsdk-r16-win32-x86-64bit 라는 폴더를 만들고 그 안에 압축을 풀어둡니다. 이 때 폴더이름은 편하게 지으시면 됩니다. 다만 폴더 이름을 명시할 때 한글이나 공백이 들어가지 않도록 주의하시기 바랍니다.

이클립스의 압축이 모두 풀리면 그 안에 workspace라는 폴더를 생성합니다. 이 폴더에 소스파일들이 저장되도록 지정할 것입니다.





이제 이클립스를 실행하면 아래 화면과 같이 workspace를 물어보는 화면이 나타납니다. 이 화면에서 workspace의 경로를 앞에서 생성한 디렉토리로 지정하여 줍니다.
만약 이 단계를 무시하고 지나쳤다면 이클립스의 "File > Switch Workspace"메뉴를 통해서 다시 지정해 줄 수 있습니다.






Android SDK의 다운로드 및 설치

이클립스의 설치가 잘 마무리되면 이번에는 Android SDK를 다운로드 받아서 설치할 차례입니다.
Android SDK는 초기에는 단순히 압축파일의 형태로만 제공이 되었습니다. 후에 이 압축파일이 설치 패키지 형태로 변경이 되었는데 그렇다고 해서 변한것은 없습니다. 즉 설치 완료 후에 그 파일을 다시 압축해서 다른곳에 압축을 풀어도 정상적으로 사용이 가능하다는 것이죠.

이 점을 이용해서 이클립스가 설치된 디렉토리안에 android-sdk-windows라는 폴더를 만들고 그 경로에다 Android SDK를 설치할 것입니다.

그렇게 되면 설치 완료 후에 이클립스와 함께 통째로 압축하면 언제든지 재사용이 가능해 집니다.





안드로이드 SDK를 다운로드 받기 위해서 http://developer.android.com 에 접속합니다. 사이트에 접속한 후에 두번째 메뉴인 SDK를 클릭하면 운영제체 버전에 맞는 SDK를 다운로드 받을 수 있는 페이지가 나타납니다.

여기서는 Windows 환경에서 설치를 진행할 것이므로, Installer_r16_windows.exe 파일을 다운로드 받습니다.





다운로드가 완료되면 다운로드 받은 파일을 실행하여서 설치를 시작합니다.





설치 과정중에 JDK의 설치 여부를 확인합니다. 만약 JDK의 설치가 되어 있지 않다면 JDK를 설치하신 후에 다시 이 패키지를 실행하셔야 합니다.





SDK가 설치될 경로를 묻는 화면이 나타납니다. 앞에서도 이야기 했듯이 여기서는 C:\이클립스폴더\android-sdk-windows 경로에 이 패키지를 설치할 겁니다. 아래 화면을 참고하여서 "Browse"버튼을 누릅니다.





폴더 찾아보기 창이 나타나면 앞에서 생성했던 android-sdk-windows의 폴더를 지정하여 줍니다.





지정된 경로를 확인하고 "Next"버튼을 눌러서 설치를 계속 진행합니다.





시작메뉴 폴더를 물어봅니다. 가볍게 "Next"버튼을 누릅시다.





설치가 진행됩니다. 완료되면 여기서도 "Next"를 누릅시다.





설치가 완료되면 Android의 버전별 API를 내려받아야 합니다. 설치 완료 후 API 다운로드 창을 구동시키기 위한 "Start SDK Manager" 체크박스를 체크하고 "Finish"버튼을 눌러줍니다.





설치 프로그램이 종료되면서 Android SDK Manager라는 창이 나타납니다. 기본적인 SDK이외에 Android의 버전별 API와 추가적인 툴들을 내려받도록 하는 화면입니다.

Android API는 최신 버전인 Android 4.0.3 버전과 일반적으로 개발시에 최 하위 버전으로 적용하는 2.1버전만을 다운로드 받습니다. 1.6과 1.5는 지나치게 하위버전이여서 탑제되어 있는 단말기도 드물기 때문에 배제합니다.

실제 프로젝트 진행은 4.0.3으로 진행하면서 최하위 지원 버전을 2.1로 지정하기 위해서 위와 같이 체크합니다.
그 외에 Extra라는 추가 기능들도 포함시킵니다.





이용약관에 동의하고 다운로드를 진행합니다.





실제 다운로드가 진행됩니다. 이 과정이 상당히 오래 걸립니다. 저는 이거 걸어놓고 스타를 한판 했습니다. -.-;;;
다운로드가 완료되면 별다른 메시지가 나타나지 않고 진행되던 프로그래스바가 회색으로 바뀝니다. 그럼 이 창을 그냥 닫아주면 됩니다.






ADT의 다운로드와 설치

ADT란 Android Developement Tools의 줄임말로 이클립스에 설치되어 Android SDK를 다룰 수 있도록 도와주는 이클립스 플러그인을 말합니다.

ADT를 다운로드 받고 설치하기 위해서는 이클립스를 사용해야 합니다. 이클립스의 Help메뉴 하위의 "Install New Software"를 선택합니다.





"Install"창이 나타나면 우측 상단의 "Add"버튼을 누릅니다.





Add Repository창이 나타나면 Name 속성에 "ADT"라고 입력하고 Location 속성에는 다음의 주소를 입력합니다. 여기서 입력한 주소로부터 이클립스 플러그인을 내려받게 됩니다. 입력이 완료되면 "OK"버튼을 눌러 창을 닫고 원래의 화면으로 돌아갑니다.
https://dl-ssl.google.com/android/eclipse/





원래의 화면으로 돌아가면 화면 중앙의 목록에 잠시 "Pending..."이라는 메시지가 나타났다가 다운로드 받을 수 있는 항목들이 체크박스와 함께 나타납니다. 모든 항목을 체크한 후에 "Next"버튼을 눌러서 다운로드 받습니다.





선택한 항목을 확인하는 페이지 입니다. "Next"버튼을 누릅니다.





이용약관을 확인하는 페이지 입니다. 동의한다는 의미의 "I accept ..."에 체크하고 "Finish"를 누릅니다. 이 페이지의 내용을 꼼꼼히 읽어보실 분들은... 안말립니다. -_-;;;





다운로드가 시작됩니다. 이 과정이 상당히 오래 걸립니다. 식사라도 하고 오셔야 합니다.





다운로드 중에 Anti Virus 프로그램에 대한 경고가 나타나는 경우가 있습니다. 가볍게 "OK"를 누르시면 됩니다.





다운로드가 완료되면 이클립스를 재시작해야 한다는 메시지가 아래 화면과 같이 나타납니다. "Restart Now"를 눌러서 이클립스를 재실행 합니다.





이클립스가 재실행 되고 나면 아래 화면과 같이 Android API를 내려받는 창이 자동으로 나타납니다. 우리는 앞에서 Android SDK를 설치하면서 미리 받아두었기 때문에 여기서는 "Cancel"을 눌러서 창을 닫습니다.





이제 여기까지 진행한 후에 이클립스를 닫고 이클립스가 설치된 디렉토리를 통째로 압축하면 다른 PC에 가서도 동일한 경로에 압축만 풀어주면 바로 안드로이드 개발을 진행할 수 있습니다.

저는 압축을 풀기 전에 이클립스의 폰트를 변경하고 소스파일의 왼쪽에 라인수가 표시되는 설정을 추가한 후에 압축했습니다.

안드로이드의 세계에 오신것을 환영합니다.

이제 즐깁시다~!!!






저작자 표시 비영리 동일 조건 변경 허락

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜
요즘 안드로이드 프로젝트를 한건 하고 있습니다.
아이폰과 동시 개발이 진행되고 있는 건이여서 그런지, 디자이너분께서 보내주신 컴포넌트 요소들의 그래픽이 모두 아이폰의 그것과 닮아있습니다. 더더군다나 더 골치스러운것은 팝업창의 디자인도 모두 아이폰처럼 되어 있어서 직접 새로 해야 한다는 점입니다.

아이폰의 기본 컴포넌트 PSD파일은 잘 찾아서 사용하면서 안드로이드용은 못찾겠다고 하는 바람에 디자이너에게 전달할 자료를 찾다가 안드로이드용 컴포넌트 PSD 파일을 찾았습니다.

아래 소개되는 자료들을 모두 하나의 압축파일에 폰트까지 담아서 함께 넣었습니다.

관심있으신 분들께는 좋은 참고자료가 될 것 같습니다.





#01. Android GUI PSD V1.0

안드로이드 1.5 GUI요소들에 기반한 PSD파일입니다. 이 파일이 가장 기본적으로 많이 사용되고 있는 파일이라고 합니다.




#02. Android GUI PSD v2.0 by Vladimir Grishin

Android GUI PSD V1.0에 몇가지 요소가 더 추가된 파일입니다.




#03. Android GUI PSD v2.0 by Vladimir Grishin

크기조절이 가능한 백터 요소를 기반으로 만들어진 안드로이드 GUI 요소들입니다.




[원문출처] http://ntt.cc/2010/08/03/6-free-android-gui-psd-templates-for-designers.html

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜
리소스 XML파일을 작업이 숙련되다 보면 경우에 따라서는 GUI툴을 사용하는 것 보다는 직접 XML 코드를 수정하는 것이 편하게 느껴질 때가 있다.

하지만 GUI에서 작업하던 XML코드를 막상 소스 편집창에서 열어보면, 소스코드들이 모두 한줄로 되어 있어서 알아보기가 쉽지 않다.

이클립스의 환경설정을 통해서 XML 소스를 보기 편하기 자동으로 줄바꿈 처리하여 관리할 수 있다.

이클립스의 "Windows > Preperences"메뉴를 선택하고, 좌측의 트리에서 "XML > XML Files > Editor" 항목으로 이동한다. 페이지 우측에 아래 그림과 같은 화면이 나타나면, 맨 위에 위치한 "Split multiple attributes each on a new line" 항목을 체크한다.





이클립스 설정을 마친 후, 원하는 XML 파일을 열고, Ctrl+Shift+F 를 누르면 XML파일의 줄바꿈이 아래와 같이 속성단위로 줄바꿈이 되어 변경된다.



크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

개발용으로 단말을 사용하다 보면, 이것저것 테스트를 목적으로 여러 어플들을 설치하게 됩니다. 그러다 보면 나중에는 단말을 포멧하게 되는 경우가 종종 생기는데요, 그런 상황에서 사용하는 공장초기화 방법을 소개합니다.

갤럭시 탭

  1. 시스템 전원을 끈 상태에서 "사이드 볼륨 업키" + "사이드 전원키"를 1~2초 가량 누릅니다.
    (주의할 점은 너무 오래 누르고 있으면 곧바로 재부팅이 되어 버립니다.)

  2. "Android system recovery <3e>"라는 제목이 있는 시스템 메뉴가 나타납니다. (배경에 노란 느낌표 + 안드로이드 캐릭터 이미지 가 있습니다.)

  3. 시스템 메뉴에서 "사이드 볼륨 다운키"를 눌러 "wipe data/factory reset" 항목을 선택하고 "홈키"를 누릅니다.

  4. 다음 화면이 나오면 다시 "사이트 볼륨 다운키"를 눌러서 "Yes -- delete all user data"항목을 선택하고 "홈키"를 누릅니다.

  5. 약 5~10초 가량 시스템 복구 작업이 진행됩니다.
    작업 진행의 완료는 화면 왼쪽 하단에 노란색으로 상태 메시지가 나오는데, 여기에 "Data wipe complete"라는 메시지가 출력됩니다.

  6. 시스템 복구가 완료되면 화면 왼쪽 상단의 파란색 메뉴에서 "reboot system now"항목을 선택하고 "홈키"를 누릅니다.

  7. 시스템이 재부팅 되면서 초기화 작업이 종료됩니다.

  8. 이 때, SD카드의 내용은 초기화 되지 않기 때문에 SD카드의 내용은 수동으로 지워줘야 합니다.
    (저는 PC에 USB로 연결해서 USB 저장소 사용 모드로 전환한 후에 PC상에서 포멧해 버렸습니다.)

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜

안드로이드란?

단어 자체의 뜻은 인조인간이다. 사용자를 위해 여러가지 심부름을 대신해준다는 뜻이라고 한다.
 

안드로이드는 누가 만드는가?

안드로이드는 OHA(Open Handset Aliance) 주체로 개발되고 있는 모바일 운영체제이다.
- 명목상 OHA가 개발주체이지만 실직적으로는 구글이 리드하고 있다.
 

안드로이드의 구성 및 특징

커널은 리눅스에 기반한다. 공식적으로 Java를 사용하고, C로 개발할 수 있는 NDK도 발표되었지만 아직 일반적이지는 않다.
안드로이드 내부에는 많은 외부 라이브러리가 포함되어 있어 거의 별도의 외부 라이브러리를 사용할 필요가 없다.
플랫폼에 내장되어 있는 프로그램들과 사용자가 만들어서 탑재하게 되는 프로그램이 동일한 API를 사용하게 되므로, 원한다면 기본 제공되는 프로그램들도 사용자가 원하는 것으로 교체 가능하다. 플랫폼을 구성하는 요소들을 자유롭게 선택할 수 있다는 면에서 유연성이 뛰어나다.
 
 

안드로이드의 아키텍처


 
 Application
 Framework
 Activity 관리자, 윈도우 관리자, 뷰시스템, 패키지 관리자, 전화, 통지, 위치관리자. CP
 Library
 libc, Media, SQLite, Webkit, OpenGL
Runtime
Dalvik Virtual Machine 
 Linux Kernel
 Device Driver, 전원관리, 메모리관리
 
커널위에는 Application들이 공통적으로 사용하는 System library가 존재한다. library 는 장비의 전반적인 속도를 결정하는 중요한 요소여서 Java가 아닌 C로 개발되어 있다.
안드로이드 Runtime은 Dalvik Virtual Machine과 Java Core Library로 구성된다. 안드로이드는 Java Virtual Machine을 직접이용하지 않고 모바일 환경에 최적화된 Dalvik Virtual Machine을 사용한다.
(각 Process별로 별도의 Dalvik Virtual Machine이 할당되는 방식이다.)
Dalvik은 안드로이드 전용 가상머신으로 Java class파일을 직접 실행할 수 없으며 class파일을 dex포맷으로 변환해야 실행가능하다.
 
 

4가지 구성요소

응용프로그램은 아래의 컴포넌트 중 일부만을 가질 수도 있고 여러개를 가질 수도 있다.
  • Activity - 사용자 인터페이스를 구성하는 기본단위. 눈에 보이는 화면 하나가 Activity이며 여러개의 View들로 구성된다.
  • Service - UI가 없어 사용자의 눈에 직접적으로 보이지 않으며 Background에서 무한히 실행되는 컴포넌트이다.  UI가 없으므로 사용자의 명령을 받아 들일 수 있는 Activity와연결해서 사용한다.
  • Brodcast Receiver - 시스템으로부터 전달되는 방송을 대기하고 신호 전달시 수신하는 역할을 한다. 신호만 대기할 뿐 UI를 따로 가지지는 않으므로 방송 수신시 방송의 의미를 해석하고 적절한 Activity를 띄우는 역할을 한다.
  • Content Provider - 다른 응용프로그램을 위해 자신의 데이터를 제공한다. 응용프로그램간에 데이터를 공유할 수 있는 합법적인 장치가 Conent Provider이다. ex) Database, 주소록
이 4가지 컴포넌트들은 서로 독립적으로 동작하므로 상호간의 통신을 위한 장치가 필요한데 이 역할을 Intent가 담당한다. Intent는 컴포넌트간의 통신수단이며 메시지에 대한 상세한 정보를 가진다.
 
 
출처: http://babtingdev.tistory.com/231
 
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by ☞호야☜