• 1나루토매니아
  • 2뱅이
  • 3푸타코타
  • 4완벽그자체
  • 5해삼
  • 1뱅이
  • 2나루토매니아
  • 3알짜배기
  • 4뱅이
  • 5빙그레우유
안드로이드 강좌 3 - 프로젝트 실행과 디버깅 그리고 단말 세팅
연속출석 :
1일 랭킹 : 399위 중장7
45%
45% (1541 /3455)
  • 댓글 0 |
  • 추천 0 |
  • 조회 3567 |
  • 2012-08-09 (목) 16:30
    안녕하세요 회색입니다. 이번 강좌에서는 작성된 프로젝트의 실행과 디버깅을 해보고 실제 단말 연결까지 해보도록 하겠습니다.

    안드로이드 강좌 3 - 프로젝트 실행과 디버깅 그리고 단말 세팅

    Activity 실행
    메뉴에서 Run/Run Configurations 실행
    Android Application에서 오른쪽 마우스 클릭후 New 선택
    Name: New_configuration 을 프로젝트에 맞게 변경
    Project : Browse후 해당 Project선택
    Launch Action : Run시 실행할 Activity를 선택합니다.


    (그림 3-1)
    새로 작성한 Activity를 실행해 보기 위해서 Launch를 선택하고 List에서 새로생성한 MyActivity를 선택합니다.
    Apply 후 Run을 실행하면 Emulator가 아직 떠있지 않다면 자동으로 실행합니다. Emulator는 한번 생성해 놓으면 매번 프로그램을 실행할때 마다 다시 시작시킬필요없이 재사용될 수 있습니다.
    Run을 하게 되면 자동으로 Emulator에 이전에 인스톨되어있던 프로그램을 언인스톨하고 새로 작성된 프로그램을 인스톨한 후 선택한 Activity로 실행하여 줍니다.


    (그림 3-2)
    에뮬레이터를 처음 실행하였을 때 (그림 3-2)와 같은 화면이 나오는데 MENU라고 써져 있는 부분을 클릭하면 프로그램 화면을 볼 수 있습니다. 정상적으로 실행이 되었다면 에뮬레이터에 myactivity.xml에서 작성해주었던 "안녕하세요 모바일 플레이스 안드로이드 강좌 수강생 여러분" 라는 문구가 나타납니다.

    (그림 3-3)
    다시 프로그램을 실행시킬 때에는 (그림 3-3)에 표시된 아이콘을 누른 후 생성한 Configuration을 선택하면 됩니다.
    디버깅
    소스 에디터의 왼쪽 부분을 더블 클릭하면 해당 위치에 브레이크 포인트가 설정됩니다. 브레이크 포인트가 설정된 지점에 작은 동그라미가 표시됩니다.


    (그림 3-4)
    그럼 이제 디버깅 모드로 프로그램을 실행시켜보도록 하겠습니다. (그림 3-5)에 표시된 벌레 모양 아이콘이 디버깅을 위한 실행 버튼입니다.

    (그림 3-5)
    다이얼로그 창이 뜨는데 확인을 누르면 이클립스가 디버그 상태로 전환됩니다. 이것을 Debug Perspective로 전환되었다고 합니다. 그리고 아까 잡아주었던 브레이크 포인트에 현재 실행이 멈추어 있는 것을 확인할 수 있습니다.

    (그림 3-6)
    Step Into (F5) : 메서드 속으로 들어가서 실행
    Step Over (F6) : 한줄 실행
    등 디버깅과 관련된 명령과 아이콘의 모양은 메뉴의 Run에서 확인하실 수 있습니다.
    Perspective
    소스 변경화면과 디버깅 화면등의 Perspective 전환은 오른쪽 위화면에서 각각 Java와 Debug의 클릭으로 가능합니다.

    (그림 3-7)
    안드로이드 개발시 또하나의 유용한 Perspective가 있는데 바로 DDMS입니다. 메뉴의 Windows/Open Perspective에서 DDMS를 선택하면 열수 있습니다. (바로 보이지 않는다면 Other를 클릭하면 선택하실 수 있습니다.)

    (그림 3-8)
    DDMS Perspective에서는 현재 에뮬레이터 및 단말의 프로세스, 쓰레드, 힙, 파일등의 다양한 정보를 확인할 수 있습니다. 또한 에뮬레이터에서 SMS, 전화, GPS 등을 시뮬레이션할 수도 있습니다.
    로그캣
    저번 강좌에서 소스에 Log.d("MyTag", "Print Test Log"); 라는 코드를 넣었습니다. 이것은 개발할때 필요한 로그를 출력해주는 역할을 합니다. 디버깅 혹은 DDMS 화면 밑 부분에 LogCat이라는 영역에서 로그를 확인하실 수 있습니다. Print Test Log라고 찍힌 부분을 확인하실 수 있습니다.


    (그림 3-9)
    그런데 로그가 너무 많이 나와서 복잡합니다. 작성한 어플리케이션에서 나오는 메시지만을 따로 확인하기 위해서 필터를 적용할 수 있습니다. Log.d함수의 첫번째 인자인 Tag부분을 이용해서 가능합니다. 녹색 + 모양을 눌러 Filter를 생성합니다.

    (그림 3-10)
    Log Filter라는 창에서 Filter Name은 적당히 적은 후, 따로 메시지를 확인할 Tag부분을 "MyTag"로 적어서 OK를 합니다.

    (그림 3-11)
    이제 LogCat창안에 새로운 필터 탭이 생겨서 MyTag라는 Tag를 가지는 메시지는 따로 분류해서 보여줍니다.

    (그림 3-12)
    단말 디버깅
    안드로이드 실제 단말을 통한 개발은 몇가지 설정만 해준다면 에뮬레이터를 통한 개발과 크게 다르지 않습니다.
    단말 상에서 Settings를 실행 Applications/Development로 들어가서 USB debugging과 Stay awake를 체크해줍니다.
    그런 후 단말을 USB케이블을 통해서 PC연결해주면 새로운 장치를 찾았다며 드라이버를 설치하라는 화면이 나옵니다.
    드라이버는 SDK가 설치된 폴더 밑에 usb_driver라는 폴더에 저장되어있습니다. (1.0 SDK Release2에서 부터 포함되서 나왔습니다.)
    정상적으로 드라이버가 설치되었다면 DDMS화면의 왼쪽 윗부분 Devices화면에 Emulator가 아닌 실제 장치가 표시됩니다.

    (그림 3-13)
    실제 단말상에서 개발시 소스 상에서 추가해줘야 하는 부분이 하나 있습니다. AndroidManifest.xml에 application 태그에서 android:debuggable="true"를 추가해주어야 합니다. 만약 설정해주지 않는다면 Wating For Debugger화면에서 더 이상 진행되지 않습니다.

    (그림 3-14)
    debuggable tag는 개발시에 넣어두고 실제 릴리즈시에는 삭제해주는 것이 좋습니다. 이제 모든 설정이 끝났고 실제 단말에서도 에뮬레이터에서 디버깅을 하는 것과 동일하게 개발을 하실 수 있습니다.
    이번 강좌에서는 안드로이드 개발과 디버깅을 위한 이클립스의 사용법과 단말 세팅까지 살펴보았습니다. 이제 이클립스에 환경과 기본적인 프로젝트 구성에 익숙해지셨을 테니 다음 강좌 부터는 본격적인 개발에 들어가 보도록 하겠습니다.


    [이 게시물은 더어플님에 의해 2016-07-12 15:23:56 개발 꿀팁에서 복사 됨]
    댓글을 작성하시려면 로그인을 하셔야지만 작성가능합니다. [로그인하기] [회원가입하기]
    공지글 이거슨 꿀팁!! 작성 가이드 v1.1 (2013-11-13) +174 더어플 13/03/12 140649
    젤리빈 로그캣 변경점
    젤리빈 로그캣 변경점
    11년전
    h.4323
    v.1
    GNCkorea
    삼성 AdHub SDK 심각한 버그 있네요.
    삼성 AdHub SDK 심각한 버그 있네요.
    11년전
    h.3677
    v.1
    GNCkorea
    구글 넥서스 OTA 끄기 - 루팅 필요
    구글 넥서스 OTA 끄기 - 루팅 필요
    11년전
    h.4123
    v.0
    GNCkorea
    구글 넥서스 수신된 sms/mms 저장경로 아시는 분계신가요??
    구글 넥서스 수신된 sms/mms 저장경로 아시는 분계신가…
    11년전
    h.6689
    v.2
    GNCkorea
    MS 스마트폰 가능성 보인 Zune HD, 그리고 마무리
    MS 스마트폰 가능성 보인 Zune HD, 그리고 마무리
    11년전
    h.1774
    v.0
    GNCkorea
    이제 Round1, MS에게도 스마프폰의 기회는 있었다
    이제 Round1, MS에게도 스마프폰의 기회는 있었다
    11년전
    h.1849
    v.0
    GNCkorea
    MS와 다른 시선의 Apple 스마트폰
    MS와 다른 시선의 Apple 스마트폰
    11년전
    h.3501
    v.0
    GNCkorea
    MS가 생각하는 Smart Phone
    MS가 생각하는 Smart Phone
    11년전
    h.1554
    v.0
    GNCkorea
    윈도우모바일의 침몰과 아이폰의 성공 그 원인을 분석-1980년대로의 여행
    윈도우모바일의 침몰과 아이폰의 성공 그 원인을 분석-1…
    11년전
    h.2616
    v.0
    GNCkorea
    윈도우모바일의 침몰과 아이폰의 성공 그 원인을 분석하다
    윈도우모바일의 침몰과 아이폰의 성공 그 원인을 분석하다
    11년전
    h.1604
    v.0
    GNCkorea
    베가 S5에 탑재된 1300만 화소 카메라 품질은?
    베가 S5에 탑재된 1300만 화소 카메라 품질은? (4)
    11년전
    h.12063
    v.3
    GNCkorea
    베가 S5 하드웨어 성능 및 배터리 시간 테스트
    베가 S5 하드웨어 성능 및 배터리 시간 테스트 (1)
    11년전
    h.9900
    v.0
    GNCkorea
    미니 윈도우가 포함된 베가 S5 특화 기능들
    미니 윈도우가 포함된 베가 S5 특화 기능들
    11년전
    h.7528
    v.0
    GNCkorea
    베가 레이서2보다 발전된 FLUX UX 적용
    베가 레이서2보다 발전된 FLUX UX 적용
    11년전
    h.8252
    v.0
    GNCkorea
    한 손에 들어오는 5인치 LTE 스마트폰! 스카이 베가 S5
    한 손에 들어오는 5인치 LTE 스마트폰! 스카이 베가 S5 (1)
    11년전
    h.3730
    v.1
    GNCkorea
    윈도우8과 함께 등장한 윈도우 스토어, 자유와 통제의 기로에서 선택은?
    윈도우8과 함께 등장한 윈도우 스토어, 자유와 통제의 …
    11년전
    h.3083
    v.0
    GNCkorea
    포켓PC, 옴니아…영욕의 윈도우폰
    포켓PC, 옴니아…영욕의 윈도우폰 (1)
    11년전
    h.3556
    v.1
    GNCkorea
    안드로이드 강좌 6 - Java 코드(Code)에서 뷰(View) 다루기
    안드로이드 강좌 6 - Java 코드(Code)에서 뷰(View) 다…
    11년전
    h.2960
    v.0
    GNCkorea
    안드로이드 강좌 5 - XML에서의 TextView, ImageView, LinearLayout
    안드로이드 강좌 5 - XML에서의 TextView, ImageView, L…
    11년전
    h.5069
    v.1
    GNCkorea
    안드로이드 강좌 4 - 액티비티(Activity), 뷰(View), 레이아웃(Layout)
    안드로이드 강좌 4 - 액티비티(Activity), 뷰(View), 레…
    11년전
    h.5019
    v.1
    GNCkorea
    안드로이드 강좌 3 - 프로젝트 실행과 디버깅 그리고 단말 세팅
    안드로이드 강좌 3 - 프로젝트 실행과 디버깅 그리고 단…
    11년전
    h.3572
    v.0
    GNCkorea
    안드로이드 강좌 2 - 이클립스 개발환경 사용법 및 프로젝트 생성
    안드로이드 강좌 2 - 이클립스 개발환경 사용법 및 프로…
    11년전
    h.3953
    v.1
    GNCkorea
    안드로이드 프로그램이 죽는 경우 디버깅 방법
    안드로이드 프로그램이 죽는 경우 디버깅 방법
    11년전
    h.4714
    v.1
    GNCkorea
    윈도우즈 개발환경 구성 - Eclipse 3.6.1 (Helios), ADT-8.0.1
    윈도우즈 개발환경 구성 - Eclipse 3.6.1 (Helios), ADT…
    11년전
    h.3617
    v.1
    GNCkorea
    Android Virtual Device(AVD) 사용법
    Android Virtual Device(AVD) 사용법
    11년전
    h.6377
    v.1
    GNCkorea
    안드로이드 프로젝트 생성 및 실행
    안드로이드 프로젝트 생성 및 실행
    11년전
    h.2382
    v.0
    GNCkorea
    안드로이드 강좌 1 - 어플리케이션 개발 시작하기. SDK 설치 및 실행
    안드로이드 강좌 1 - 어플리케이션 개발 시작하기. SDK …
    11년전
    h.3428
    v.1
    GNCkorea
    잼있게 따라해보는 옵티머스 LTE2 테마박스
    잼있게 따라해보는 옵티머스 LTE2 테마박스
    11년전
    h.2830
    v.0
    GNCkorea