안드로이드2010.03.26 15:00

제목: 4. 안드로이드 가상 장치 설정

 

안드로이드 프로젝트를 개발하면, 프로그램을 실행 시켜볼 장치가 필요합니다.

하지만, 실제 장치 없이도 장치를 대신하는 소프트웨어(를 에뮬레이터 라고 합니다)를 사용합니다.

 

안드로이드는 그 에뮬레이터를 AVD (Android Virtual Device) 라고 부릅니다.

 

AVD를 만들기 위해서는 우선 AVD가 사용할 안드로이드 SDK가 필요합니다. 현재까지 다양한 버전이 공개되었고, 글을 쓰는 2010년 3월 현재, 최신 버전은 2.1 입니다.

 

이제, AVD를 위한 SDK를 설치해 보겠습니다.

 

안드로이드 SDK를 설치한 경로를 찾아 갑니다.

저는 c:\android-sdk-windows 에 설치 했었습니다. 이 폴더에 있는 SDK Setup 을 실행 시킵니다.

 

 

만약 https 접속이 안되어 에러가 발생해서 아래와 같은 화면이 나타난다면,

 

Close 를 눌러서 닫으시고,

AVD Manager 의 Setting 에서 Misc 의 'Force https://... Sources to be fetched using http://' 를 체크하시면 됩니다.

 

 

AVD Manager가 사용 가능한 SDK 들을 인터넷 상에서 확인해 옵니다.

 

안드로이드 버전별로 사용 가능한 플랫폼들이 나타납니다.

현재 출시되는 안드로이드 폰은 2.0 이상의 플랫폼을 탑재하고 있습니다. 버전별로 모두 선택하여 설치하실 수 있지만, 여기에서는 최신 버전의 2.1 플랫폼을 선택하여 설치 하겠습니다.

플랫폼 이름을 살펴보시면, API 7 이라고 숫자가 써져 있는 것이 버전을 나타냅니다. 그런데 같은 API 7 이라고 씌여 있지만, 하나는 "SDK Platform Android 2.1, API 7" 또 하나는 "Google APIs by Google Inc., Android API 7" 이라고 씌여 있습니다. 그냥 Android 라고 적혀 있는 것은 안드로이드 기본 SDK 이고, 기본 SDK에 구글에서 사용하는 다양한 서비스를 포함시켜 둔 것이 Google APIs SDK 입니다. Google API를 선택하면 구글에서 제공하는 서비스를 사용하여 프로그램 개발을 할 수 있게 됩니다. 대부분 Google API 를 포함한 단말기 이기 때문에, Google API를 선택하여 설치합니다.

그림에서 보시는 것처럼

  • Documentation for Android SDK
  • Samples for SDK API 7
  • Google APIs by Google Inc., Android API 7

를 선택하고, 하단 우측의 Install Selected 버튼을 클릭 합니다.

 

그림처럼 라이선스 동의서가 나옵니다. Accept All 해서 모두 선택 하시면 됩니다.

 

선택한 항목들을 다운로드 합니다.

 

설치 완료.

 

Installed Packages 를 보시면 현재 설치된 패키지를 확인하실 수 있습니다. 이 화면에서 나중에 하단의 update All… 을 선택하시면 설치된 패키지의 업데이트를 확인하고 설치하실 수 있습니다.

지금보니.. Google API만 선택했지만, Android API 도 같이 설치되었네요..

 

이제 가상 장치를 만들어 볼 차례입니다.

왼편 메뉴의 Virtual Devices 를 선택 하세요.

현재는 아무것도 없는 상태 입니다.

오른편의 New 버튼을 누릅니다.

이름은 사용하실 가상 장치의 이름을 입력합니다. 저는 AVD(가상장치)라는 단어와 API 7 의 숫자를 조합해서 이름을 붙여 주었습니다.

Target 은 가상 장치가 사용할 플랫폼을 선택하는 곳입니다. Google API 를 선택 합니다.

SD Card 는 AVD가 사용할 SD 메모리의 용량을 기입하는 곳입니다. 저는 32메가를 선택 했습니다. 이전 경험상 이 숫자가 10 이하이면, 나중에 AVD가 실행되지 않는 문제가 있었습니다.

Skin 에서는 화면의 해상도를 선택할 수 있습니다. 타겟이 될 장치의 해상도를 감안하여 선택하시면 됩니다. 저는 기본으로 했습니다.

Create AVD 는 눌러서 가상장치를 생성 합니다.

 

방금 생성한 AVD 가 나타납니다. 같은 방법으로 다양한 API 의, 다양한 플랫폼의, 다양한 해상도를 갖는 AVD를 여러 개 만드실 수 있습니다.

 

AVD7 을 선택하면, 우측 Start 버튼이 활성화 되고, 안드로이드 에뮬레이터를 시작할 수 있습니다.

Start 버튼을 클릭해 보세요.

에뮬레이터를 실행 시킬 때 선택할 수 있는 옵션창이 나타납니다.

첫번째는 에뮬레이터의 해상도를 조절하는 옵션인데요.

에뮬레이터의 해상도가 높아지다(커지다)보니, 모니터 해상도를 넘어가는 경우가 생기는데, 이럴 때 에뮬레이터의 해상도를 줄여서 (화면에 나타나는 크기를 줄여서) 사용할 수 있게 해주는 옵션 입니다.

두번째, Wipe user data 는 기존 사용자 데이터를 삭제할 것인지를 체크하는 것입니다.


보통, 둘다 체크하지 않고 시작 합니다.


이제 Launch 버튼을 클릭 하세요~!

지금은 곤란하다. 기다려 달라.


안드로이드 에뮬레이터가 구동 중입니다. 

화면에 ANDROID 라고 뜨고, 1,2분 정도 기다리시면 아래처럼 부팅 완료된 화면이 나타 납니다.


에뮬레이터가 구동되었습니다.

마우스를 이용해서 움직여 보세요 ^^

 

 
2010/03/27 - [안드로이드] - 5. 마무리 설정

 

 

 

 

 

 

 p.s
에뮬레이터 구동이 완료되었는데, 아래처럼 화면 잠금 화면이 나타난 경우에는


왼편의 자물쇠를 마우스로 클릭해서 오른편으로 드래그 해주세요.

왼쪽의 자물쇠를 마우스로 클릭해서 오른쪽으로 드래그 해주세요.



혹시, 화면상에 마우스 클릭 자체가 안된다면! 에뮬레이터가 스크린 OFF 상태 (화면 꺼짐 상태) 인 것입니다.
그럴땐, 오른편에 있는 빨간수화기 버튼을 한번 클릭 하신 뒤에
위 설명 처럼 자물쇠를 오른쪽으로 드래그 하시면 화면 잠금이 풀립니다.

Posted by Dr.Kein

댓글을 달아 주세요

  1. 비밀댓글입니다

    2010.04.27 23:38 [ ADDR : EDIT/ DEL : REPLY ]
  2. 조조보

    가상에뮬 가동시키면 에러 메세지가 보이고 config.ini에러인가가 뜨는 것 같습니다.
    도와주세요..

    2010.04.28 08:27 신고 [ ADDR : EDIT/ DEL : REPLY ]
  3. 혹시 윈도 사용자 이름이 한글로 되어 있으신가요.
    사용자 이름이 한글로 되어 있는 경우에 비슷한 에러가 났던걸로 기억 합니다.

    2010.05.03 16:48 신고 [ ADDR : EDIT/ DEL : REPLY ]
  4. 도와주세용

    emulator: ERROR: bad config: virtual device directory lacks config.ini
    emulator: could not find virtual device named 'AVD7'
    이런에러가뜨면서 안뜨네요 어떻게해야되요??ㅜ/.ㅜ

    2010.05.09 22:36 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 윈도 사용자 이름이 한글로 되어 있는 경우 인것 같습니다.
      사용자 이름이 한글인 경우 안드로이드 virtual device 를 다른 폴더로 옮기시면 해결 됩니다.

      2010.05.10 11:07 신고 [ ADDR : EDIT/ DEL ]
  5. 김종호

    emulator: ERROR: no search paths found in this AVD's configuration.
    Weird, the AVD's config.ini file is malformed. Try re-creating it.
    위와 같은 에러메시지가 뜨는데요 ....!!

    2010.05.18 22:57 신고 [ ADDR : EDIT/ DEL : REPLY ]
  6. Legend

    실행된 AVD에 메뉴나 아이콘 등이 없이 'ANDROID' 라고만 뜨는데... 이건 정상인건가요??

    아님 default 값이 뭔가 설정되어 있어야 하는건가요??

    Google API 가 깔려있으면 자동으로 나와야 하는거 아닌지요??

    2010.06.05 12:57 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • ANDROID 라는 문구가 나온 상태는 부팅중인 상태 입니다.
      더 기다리시면 메인 화면이 나타나거나
      또는, 절전모드 상태인 화면(화면 잠김이 되어 있는 화면) 이 나타납니다.
      더 기다려 보세요~

      2010.06.08 11:30 신고 [ ADDR : EDIT/ DEL ]
  7. 시범 운영 희망자

    이곳의 몇개 강좌를 링크하고 싶은데 괜찮으신가요?

    2010.06.12 12:11 신고 [ ADDR : EDIT/ DEL : REPLY ]
  8. 101%

    검정색 화면에 Android 딸랑 나옵니다. 성공한건가요?

    그리고 3번 cmd 화면이 나오는데, 마지막에 Error apllication ~ 하고 나옵니다.

    2010.07.05 15:20 신고 [ ADDR : EDIT/ DEL : REPLY ]
  9. virtual device가 어디있죠??
    그리고찾으면 어디로옮기죠??

    2010.07.22 21:09 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 답변이 늦었네요.. 이미 해결 하셨을것 같지만..
      가상장치는 내문서 폴더쪽에 있었던거 같습니다.
      안드로이드 avd 옮기기로 검색 해보시면 금방 찾으실 수 있습니다.

      2010.08.26 00:12 신고 [ ADDR : EDIT/ DEL ]
  10. Dr. Dori

    java가 설치되어 있지 않다고 하는데...설마 그 많은 량을 다 받아야만 하는건가요?

    2010.08.25 10:55 신고 [ ADDR : EDIT/ DEL : REPLY ]
  11. Dr. Dori

    Error loding preference라고 뜨면서 android라고 구동이 되는데...

    그럼 이건 어떻게 되는건지요?

    android...에서 안드로이드 입체로고로 바뀐 후 아무 반응이 없어요 ㅠ

    2010.08.25 15:44 신고 [ ADDR : EDIT/ DEL : REPLY ]
  12. 오류ㅜㅜ

    emulator: ERROR: bad config: virtual device directory lacks config.ini
    emulator: could not find virtual device named 'AVD7'
    이런 에러가 뜨면
    virtual device를 다른폴더에다가 옮기면 된다고 하셨는데 무슨 말이시죠?

    2010.10.02 13:54 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 요런 내용입니다. ^^
      http://www.androidside.com/bbs/board.php?bo_table=B46&wr_id=1612

      2010.10.04 14:00 신고 [ ADDR : EDIT/ DEL ]
  13. 모르겠음..ㅠ

    가상에뮬을 스타트를 하면 이런글이 써잇는 창이 떠집니다..
    어떻게 해야 하나요??
    invalid command-line parameter: �
    Hint: use '@foo' to launch a virtual device named 'foo'.
    please use -help for more information

    2010.10.07 20:42 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • parameter: ? 여기의 물음표가 궁금하네요.
      아마도, avd 이름을 붙일 때 뭔가 잘못 된 것같습니다. 가상장치를 삭제하고 다시 만들어서 해보세요. ^^

      2010.10.20 14:14 신고 [ ADDR : EDIT/ DEL ]
  14. help

    Error Loading DDMS Preferences어찌하나요??

    2011.11.20 10:12 신고 [ ADDR : EDIT/ DEL : REPLY ]
  15. emulator: ERROR: This AVD's configuration is missing a kernel file!!
    이라고 런취 누르자마자 떠요 ㅠ.

    2012.01.19 16:06 신고 [ ADDR : EDIT/ DEL : REPLY ]
  16. JIJI

    ERROR : Unable to find a 'userdata.img file for ABI aemeabi t ocopy into the AVD folder.
    이런 오류 메세지 뜨는데 어찌 해결해야되죠 부탁드립니다.

    2012.03.19 16:06 신고 [ ADDR : EDIT/ DEL : REPLY ]

안드로이드2010.03.23 10:35

제목: 1. 개발 툴 (이클립스) 설치

 

내용

  1. 이클립스 내려받기
  2. JDK 설치하기

 

 

안드로이드 개발을 위해서 개발 툴을 설치합니다.

안드로이드 개발은 자바기반의 개발을 할 때 널리 사용되는 툴인 '이클립스'를 사용하여 진행 됩니다.

그리고, 자바 개발을 위해서 필요한 자바 개발 킷(JDK: Java Development Kit) 도 설치를 해야 합니다.

이 글에서, 위 두 가지 도구를 설치하는 방법을 설명 하겠습니다.

 

 

이클립스를 다운로드 받으러 가봅시다.

 

구글에서 'eclipse down' 이라고 검색을 합니다.

'베스트 웹문서' 에 이클립스 다운로드 링크가 나타납니다.

 

링크를 타고 들어가 보시면…

위 화면과 같이 다양한 버전의 이클립스를 다운로드 받을 수 있게 되어 있습니다.

 

그 중에서 두 번째 'Eclipse IDE for Java Developers (92MB)' 를 선택합니다.

다운로드 할 수 있는 서버들의 링크가 나타납니다. 녹색 화살표 옆의

[Korea, Republic Of] Amazon AWS(http) 를 클릭하시면

압축된 파일을 다운로드 받게 됩니다.

 

다운로드 받은 파일의 압축을 풀어내면 아래처럼 나타납니다.

저는 C:\eclipse 에 압축을 풀었습니다.

 

이제 개발을 위한 툴의 설치는 완료되었습니다.

 

이번에는 실제 개발을 위해 필요한 JDK를 설치해 봅시다.

마찬가지로 구글에서 검색을 합니다.

검색 키워드는 jdk download 입니다.

검색 페이지에서 'Download JDK' 를 클릭합니다.

 

지금 글을 작성하는 시점에서 JDK 는 버전 6 이고, 18번째 업데이트 버전 이네요.

 

왼편의 빨간 다운로드 버튼을 클릭합니다.

화면처럼 로그인 창이 나타나는데, 굳이 가입하고 로그인 하실 필요 없습니다.

맨 아래 "Skip this Step" 을 클릭합니다.

그러면, 페이지가 넘어가면서 다운로드가 시작 됩니다.

이 파일을 실행을 눌러서 다운로드 후 실행 시킵니다.

 

이제, 자바 개발 환경을 위한 JDK 설치가 시작 됩니다.

흔히 접하실 수 있는 약관을 수락 하시고..

 

설치할 내용 및 설치 경로 선택 à 기본으로 두고 다음으로 넘어갑니다.

 

잠시 기다리면 설치가 완료되어 설치 프로그램은 종료되면서

웹 페이지를 하나 열어 줍니다.

계정을 만들면 어쩌구 저쩌구 한다고 합니다.. 만.

그냥 페이지를 닫습니다. (훗)

 

이제, 이클립스가 설치된 곳에 가셔서

 

Eclipse 를 실행 합니다.

 

이 화면이 나타나고, 잠시 뒤

 

이런 대화창이 나타납니다.

 

이클립스를 사용하면서 작업한 내용들 (프로젝트들) 이 기본적으로 저장될 위치를 묻는 창입니다.

특별한 이유가 없으면 OK를 눌러서 자동으로 적어준 경로를 workspace (작업 공간이죠) 로 사용 시면 됩니다.
(저는 c:\workspace 를 선택 했습니다.)
그리고, 다음에도 이클립스가 실행 될 때마다 작업공간을 물어보는데,
아래의 체크박스를 체크하시면 현재 경로를 기본 작업 경로로 인식하고 다음부터 묻지 않습니다.  

이런 화면이 나타났다면,

자바 개발을 위한 환경을 성공적으로 구축 하신 겁니다.

또, 안드로이드 개발을 위한 첫 관문을 통과 하신 겁니다. ^^;

 

다음 글에서 본격적으로, 안드로이드 개발을 위한 준비를 설명 하겠습니다.

2010/03/24 - [안드로이드] - 2. 안드로이드 SDK 설치


Posted by Dr.Kein

댓글을 달아 주세요

  1. 꺄오~ 이걸 하나하나 캡쳐해서 정리하시다니!!
    대단한 인내심이세효~~!!
    저좀 도와쥬세효..ㅠㅠ

    2010.03.23 22:48 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 한참 전부터 포스팅 할까말까 하다가
      져니님한테 필 받아서 (또 몇일전 윈도를 새로 밀어서 다시 개발 환경 구축하면서..) 슬슬 개발환경 구축하는 와중에 워드에서 작성했습니다. ㅋㅋㅋ

      근데, 뭘 도와드릴까요~? ^^

      2010.03.24 14:26 신고 [ ADDR : EDIT/ DEL ]
  2. Cavatina

    알기 쉽게 잘 정리해 주셨네요. 감사합니다.

    2010.04.16 09:30 신고 [ ADDR : EDIT/ DEL : REPLY ]
  3. 따라하기 쉽게 정리해주셨어요 감사합니다. ㅋㅋ

    2010.04.19 09:35 신고 [ ADDR : EDIT/ DEL : REPLY ]
  4. innosoulx

    이제막 시작해 보려고 하는 사람입니다. 잘 정리해 주셨네요.
    감사합니다^^

    2010.04.22 11:09 신고 [ ADDR : EDIT/ DEL : REPLY ]
  5. 정말 말 그대로 그대~로 딸아 했더니 됐네요 ^^
    좋은글 감사합니다~

    2010.05.18 01:10 신고 [ ADDR : EDIT/ DEL : REPLY ]
  6. 아루

    개발에 관심 가지고 찾았는데 여기서 좋은 정보 얻어갑니다. 감사합니다. ^^

    2010.05.20 09:16 신고 [ ADDR : EDIT/ DEL : REPLY ]
  7. Q

    JDK 다운로드가 안되네요
    skip 같은건 없고 그냥 닥치고 로그인밖에 안나오네요..ㅠ

    2010.08.03 19:55 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=jdk-6u21-oth-JPR@CDS-CDS_Developer

      jdk 다운로드 페이지가 수시로 바뀌네요. 위 링크가 실제 다운로드 직전 페이지 이고, 여기 보시면 플랫폼 선택(윈도우) 만 하시고 아래의 continue 버튼 누르시면 곧 다운로드 링크가 나타납니다.

      2010.08.05 10:00 신고 [ ADDR : EDIT/ DEL ]
  8. City boy

    대단하십니당~ 퍼가도되죵?

    2010.09.14 12:48 신고 [ ADDR : EDIT/ DEL : REPLY ]
  9. OMG

    대단하시군요;;;
    정말 많은 도움 되었습니다

    2010.09.26 06:58 신고 [ ADDR : EDIT/ DEL : REPLY ]
  10. 많은정보 감사합니다. 정말 많이 배우고 갑니다. 덕분에 공부하는데 많은 도움되네요~
    정말 뭐라 말씀드려야할지... ㅎㅎㅎ 정말 감사합니다.

    2011.01.03 09:27 신고 [ ADDR : EDIT/ DEL : REPLY ]

하루하루2010.01.14 16:08


개발계획총괄도


Posted by Dr.Kein

댓글을 달아 주세요

  1. 몇년전에 여기 도시계획 참여 했던거 기억난다..쩝...
    이제 가긴 가는 건가? 쩝.

    2010.02.16 19:01 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 한창 땅 밀고있다. 분양들도 열심히 받고 있고..
      근데. .좋은 물건은 너무 비싸 ㅋ

      2010.02.17 09:34 신고 [ ADDR : EDIT/ DEL ]

안드로이드2010.01.08 11:48
아래와 같은 순서로 안드로이드 개발 환경 구축을 위한 절차를 간단하게 적어볼까 합니다.
저 역시 안드로이드 개발을 배우는 과정이며, 그 과정을 기록하는 차원에서 시작 합니다.

1. 개발 툴 (이클립스) 설치
2. 안드로이드 SDK 다운로드
3. 이클립스에 ADT 플러그인 설치
4. SDK에 안드로이드 플랫폼 추가
5. API 문서 받기
6. 다른 SDK 컴포넌트 설치
7. Hello Android 프로젝트 만들기

Posted by Dr.Kein

댓글을 달아 주세요

Windows Mobile2009.05.12 09:55

http://innovator.samsungmobile.com/

삼성에서 운영중인 삼성폰 개발자 페이지 입니다.
삼성에서 만든 폰을 이용하여 프로그램 개발을 할 때 참고하기 위해서 만들어 놓은 페이지 인것 같으며, 
심비안, 윈도 모바일, 자바 기반의 삼성 폰에서 사용할 수 있는 SDK를 제공 합니다.
옴니아등 삼성에서 새로이 내놓고 있는 삼성폰에 프로그램을 개발할 때 유용하게 사용될 수 있습니다.

즉, '옴니아 개발을 위한 정확한 내용을 구하기 힘든 실정이니, 이곳의 정보를 참고 하십사' 하는 취지의 글입니다.

한 예로... 
요즘 스마트폰 관련 세미나에서 옴니아를 발표해 주시는 삼성전자의 모 책임연구원님께 
옴니아의 '모션센서' 에 대해서 질문을 했으나 실제와는 다른 답변을 해주신 적이 있습니다.


<필자의 질문내용>
1.     모션센서

모션센서는 설명자료들을 살펴보면 3축의 기울어짐을 각도로 출력하는 기능을 가진 것 같습니다. 궁금한 점은, 폰의 자세(기울어짐, 회전등)의 변화 없이 한 방향으로 밀었을 때 

예를들어 자세는 그대로 유지한 채로, 오른쪽으로 갑자기 밀었을 때 이 것을 감지할 수 있는지 궁금합니다.

, 가속도 센서의 기능이 있는 것인지 궁금합니다.\



<책임연구원님의 답변 내용>

> T옴니아에는 3축 모션센서가 들어가 있어서 자세를 유지한 채로 밀었을 경우 감지는 안됩니다.


하지만, 이 글에서 소개하는 innovator 페이지에서 찾은 SDK를 설치하고 가속도 센서 API를 읽어오는 프로그램을 만들어서 테스트 해보니, 3축 방향에 대한 가속도를 알 수 있었습니다.

실제와는 다른 답변을 해 주신 것이죠..


그러니.. 다시한번 말하지만..
이 글을 쓴 취지는.. 누구 (또는 어떤 기업을) 모함(비방)하려는 것이 아니라, 
국내의 개발자들에게 제공되는 정확한 정보가 부족하니..  개발자 자신이 열심히 찾아서 개발을 해야 한다는 내용이고, 
도움되는 싸이트가 있으니 참고하시라는 내용입니다 ^^ㅋ

Posted by Dr.Kein

댓글을 달아 주세요

  1. 마루아빠

    3축 모션센서라고 했으면서 G 센싱이 안된다는 것은 무슨 헛소리인지 모르겠군요...

    모션을 탐지하려면 당연하게도 가속도(G)를 탐지해야 하는 것인데...

    물론 지자기 센서가 있다고 했다면 가속도 탐지가 안되는게 당연합니다만.. 3축 모션 센서라고 해놓고선...

    정말 삼성 모바일 이노베이터 담당 직원인지 의심이 되는군요...

    게다가 책임연구원이면 과장급이고.. 협력 업체 CEO나 CTO급인데... 너무 무성의한 것 같네요..

    2009.06.01 22:49 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 앗.. 마루아빠님 여러모로 도움도 주시고.. 감사합니다 ^^;

      하드웨어개발자 따로, 소프트웨어 개발 따로, 포팅따로, 소개발표 따로, 다들 따로따로라서 세세한 것까지는 다 모르는 것이려니.. 하고 있습니다.

      결국, 목마르 사람이 우물 파야죠 ㅎㅎ

      2009.06.03 09:17 신고 [ ADDR : EDIT/ DEL ]
  2. 신사 이봐요, 거기에만 귀하의 블로그에 발견과 함께 정보의 숫자를 추구하는 월드 와이드 웹 평가로 합의했다. 우리는 당신이 blogsite에 대해 가지고있는 정보의 경외감에 있습니다. 아이디어는 왜 주제가보고 정확하게하는 방법을 보여줍니다. 이 기사를 예약 - 표시 더 얻으려면 다시 시작. 누구든지, 내 친구, 좋은 OLE '!

    2011.08.16 15:53 신고 [ ADDR : EDIT/ DEL : REPLY ]

Windows Mobile2009.04.08 10:04

저번에 한참 찾아 헤메이다가 없는줄 알고 넘어갔던 에뮬레이터의 기본 메모리 용량 조절 부분을 우연히 찾았다.


VS 2008 기준.

사진의 붉은 원 아이콘을 누르거나
또는
VS 메뉴의 '도구' -> '옵션' -> '장치도구' -> '장치' 를 찾아간다.

그 다음 단계는 아래 그림으로 대체...



그러나..

최대 RAM 크기는 256 메가 라는 어이없는 제약이 있다 ㅡ,.ㅡ;;
Posted by Dr.Kein

댓글을 달아 주세요

Windows Mobile2009.03.27 09:37

윈도우 모바일 장치에 동작시킬 프로그램을 개발 하기 위해서, 실제 윈도우 모바일 단말기를 사용하지 않고도
 단말기의 동작, 환경을 똑같이 사용할 수 있도록 해주는 에뮬레이션 도구가 있다.

일단은 개발 환경을 갖추기 위해
Visual Studio 가 필요하고,
Windows Mobile SDK 가 필요하다.


비주얼 스튜디오의 '도구' 메뉴에 '장치 에뮬레이터 관리자' 를 실행 시켜 보면 (vs2008기준)
현재 시스템에 설치된 모바일 단말기의 에뮬레이터 목록을 볼 수 있다.



이 곳에서
에뮬레이터의 전반적인 관리를 할 수 있다.

개발에 사용할 에뮬레이터를 선택하여 오른쪽 클릭을 하면 메뉴가 나타난다. 여기서 '연결'을 눌러보자.

연결을 클릭하면, 해당 os 가 동작하는 에뮬레이터가 나타나게 된다.
이제부터는 실제 윈도우 모바일 단말기를 사용하는 것과 동일하게 사용할 수 있다.



또한, 에뮬레이터 관리자를 사용하면 실제 장치를 크래들에 얹은 것과 같은 이벤트를 활성화 시켜줄 수도 있다.
즉, 실제 단말기를 usb 케이블에 연결한 것과 같이 Active Sync 가 동작하도록 할 수 있다.

이를 위해서는 Active Sync 에서 설정이 필요하다.
Active Sync 를 활성화 시켜서,  File -> 연결 설정에 들어간다.


이곳에서 '다음 중 한 가지 연결 허용' 에서 DMA 를 선택하여야만 에뮬레이터를 연결할 수 있다.

확인을 눌러 설정을 저장한 뒤,,

에뮬레이터 관리자에서  '크레들에 놓기' 를 선택한다.


아래 그림에 보이는 것과 같이
실제 윈도우 모바일 단말을 연결하는 것과 동일한 과정을 거쳐 단말기가 연결된다.


이때, 주의할 점은..
Active Sync 는 동시에 하나의 장치만을 연결할 수 있다느 점.
실제 단말기를 usb에 꽂은 상태로, 에뮬레이터를 싱크할 수 없다는 것이 조금은 불편하다.



Posted by Dr.Kein

댓글을 달아 주세요

Windows Mobile2008.08.01 10:37
1. C# 에서 (.NET Framework)
2. UI를 갖는 어플리케이션을 작성할 때
3. 스레드를 생성해서
4. form 의 control 객체를 접근할 때
만나게되는 에러..

$exception  {"Control.Invoke는 별도 스레드에 만들어진 컨트롤과 상호 작용하는 데 사용해야 합니다."}
        System.Exception {System.NotSupportedException}


폼에 있는 컨트롤 박스를 별도의 스레드 (폼 도 하나의 스레드) 에서 접근하려고 하면
서로 다른 스레드가 하나의 컨트롤 객체에 접근하는 것을 방지하기 위해서 고안된 방법이라고 이해된다.
어디에서나 있는 멀티 스레드 환경에서 자원보호를 위한 방지책 인것이다.

샘플 코드...
아래 코드는 myDelegate라고 하는 위임을 선언하고,  progressbar 컨트롤을 업데이트 하는 스레드를 만든다.
myDelegate와 동일한 서명을 가지고 updateProgress 메서드를 선언하고, Invoke 메서드에게 updateProgress와 개체 배열을 파라미터로 전달한다.
private void updateProgress(int theValue, int theMax)
{
    if(theMax != 0)
       proStatus.Maximum = theMax;
    proStatus.Value = theMax;
}

private delegate void myDelegate(int theValue, int theMax);

private void myThread()
{
   for (int i=0 ; i < 10 ; i++)
  {
      this.Invoke(new myDelegate(updateProgress), new object[] {i*10,100});
      Thread.Sleep(500);
  }
}

private void cmdCreateThread_Click(object sender, System.EventArgs e)
{
   new Thread(new ThreadStart(myThread)).Start();
}


Eclipse를 주로 써 오다가, visual studio 를 사용하는 입장에서 코딩 하기 꽤나 귀찮다.

한 예로, 예외처리를 해야하는 코드에서 eclipse는 코딩 단계에서 try~catch 하라고 나오는데 반해
VS 는 빌드를 해야만, 또는 디버깅 중에 try~catch 하라고 나타난다.

pocket pc 를 디버깅 하려면 빌드, 배포 단계가 시간이 너무 오래 걸리는데,
기다렸다가 코드 몇 줄 넘어가다 exception 이라고 나타나니,,,,
짜증이 나는거지... 쳇.
Posted by Dr.Kein

댓글을 달아 주세요

  1. 그래서 Native Language가 최고라니까요 'ㅂ'

    2008.08.01 14:10 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • ㅎㅎ 그런가요^^;; 코딩을 전문으로 하질 않아서 native 도 어려워요 ㅎㅎ
      ppc용 프로그램 개발하는 일 하시나 본데 좋은 프로그램 많이 만들어 주세요~ ^^*

      2008.08.01 23:36 신고 [ ADDR : EDIT/ DEL ]
  2. 좋은 내용 담아 가도록하겠습니다. ^^

    2010.01.20 18:00 신고 [ ADDR : EDIT/ DEL : REPLY ]

Windows Mobile2008.07.23 15:44
아래 샘플 코드는 C# (.NET compact framework) 코드로
pocket pc 2003 의 레지스트리에서 적외선 포트를 찾아오는 방법이다.
win ce, window mobile 에서도 공통으로 사용할 수 있을것 같다.

레지스트리에서 적외선 포트 값을 얻는 방법은 몇 가지가 있지만,
대부분 아래의 레지스트리 키값을 얻어오면 된다.

그리고, 레지스트리의 키값 에 +1 을 해 주어야 되는것 같다.
즉, COM3 번은 레지스트리에 port index 가 2로 되어 있는것 같다.

(아무리 생각해도 레지스트리의 이곳에 적혀있는 포트 번호는 NativeIR 번호 인것 같다.)

private string FindPortIndex()
        {
            string rtn = null;
            RegistryKey regKey = Registry.LocalMachine.OpenSubKey("Drivers\\BuiltIn\\IrDA");
            if (regKey != null)
            {
                object regData = regKey.GetValue("Index");
                if (!regData.ToString().Equals("0"))
                {
                    regKey.Close();
                    rtn = "COM" + regData.ToString();
                }
            }
            else
            {
                rtn = "Can't find from registry.";
            }
            return rtn;
        }

또 다른 곳에 있는 적외선 포트 번호 경로는...
HKEY_LOCAL_MACHINE 의 Drivers/BuiltIn/IrCOMM 의 Index
아마도.. 이것이 적외선 포트의 번호인 것 같다.

SerialPort 클래스로 COM2 번을 open 하려고 하면 열수가 없었다.
근데, COM3 번은 열렸다..


문제는.. open 한 다음에 적외선 코드를 쏘고, 받고 해야하는데.. 그게 안된다.
Posted by Dr.Kein

댓글을 달아 주세요

Windows Mobile2008.07.19 21:54
pocket pc, windows mobile, smartphone, palm 등등
같은것 같으면서도 서로 다른 용어들 때문에 처음 시작 단계부터 상당히 헷갈린다.

이제야 쬐끔 갈피를 잡아가고 있는 중 ㅋ

개발에 관련된 내용을 정리해 보자
Posted by Dr.Kein

댓글을 달아 주세요