Blog | Tag | Local | Media | Guest | Login  RSS

   - 먼저 Bada SDK/IDE를 받아야 한다.
     개발자 사이트에 가서 받으면 되는데, 로그인을 해야 SDK/IDE를 받을 수 있다.

*) Bada 개발자 사이트
http://developer.bada.com/



   - 다운로드를 받아서 압축을 풀면 설치 파일이 있을 것이다.
     설치 파일을 실행해서 설치하면 된다.
     설치는 간단하게 끝난다. 그리고 재부팅을 한번 해야할 것이다.

   - 이제 IDE를 실행해서, Sample을 실행 해보자.
      설치된 폴더의 IDE폴더에 들어가면 "badaIDE.exe"파일을 실행하면 IDE가 실행된다.
      (편하게 실행하기 위해 바탕화면에 바로가기 버튼을 만들어 놓자)
  

   - 실행하면 위와 같은 로고가 나오면서 IDE가 실행될 것이다.


   - 그리고, 처음 실행하면, Workspace의 경로를 지정할 수 있는 창이 나타나게 된다.
      경로를 지정하고 OK 버튼을 누른다. ( ex. D:\WorkSpaceBada )

   - 이제 SDK에서 제공하는 기본적인 예제를 한번 실행 해보도록 하자.

   - 간단하게, 오른쪽에 bada SDK Samples창의 Sample들의 목록 중에 실행하고자 하는 Sample을
     선택한 후 오른쪽마우스 클릭을 하여 "copy into my worksapce.."를 실행해서 자신의 workspace로
     옮길 수 있다.

   - 다른 방법으로는 아래 처럼 import해도 된다.



   - IDE의 Project Explorer 창에서 오른쪽 마우스 버튼을 눌러서 Import 메뉴를 선택한다.


   - Import 창에서 bada Application Project를 선택하고 Next버튼을 누른다.
    

   - Select root directory 경로를 Bada SDK가 설치된 폴더의 Samples폴더에 있는 프로젝트들 중
     실행해보고 싶은 프로젝트를 선택한다. ( ex. Calculator )
     그리고 Finish를 누른다.


   - 그러면 위의 화면과 같이 프로젝트가 생성된 것을 확인 할 수 있다.
   - 여기서 프로젝트를 빌드( "Build Project" )하고, Binaries가 생기면,
     시뮬레이터로 실행( "Run as" -> "bada simulator application" ) 하면 된다.

   - 처음 실행하면, 초기화 작업을 하기 때문에 어느정도 시간이 걸릴것이다.
     그리고, 언어 설정등 초기화 화면도 나타날 것이다. 상황에 맞게 설정해주면 된다.


   - 그리고, 최종적으로 시뮬레이터에서 제대로 실행된 화면을 볼 수 있을 것이다.

   - 이제 개발환경 구축이 끝났고, 개발한 코드를 Bada 시뮬레이터에서 확인해 볼 수 있을 것이다.



신고

'Programing > Bada' 카테고리의 다른 글

[ Bada ] 개발 환경 구축하기  (0) 2010.06.06

 태그 : 

*) 설치 파일( INF )에 대한 이해

 

3.1 이름이 정해져 있는 섹션

*) Version 섹션
- 이 섹션에는 반드시 Signature지시자(Directives)가 있어야 함.

- Signature="signature-name"

    - 사용할 수 있는 운영체제

    ( $Windows NT$, $Windows 95$, $Chicago$ )

- Class=class-name

    - 드라이버 설치를 위한 디바이스 유형을 명시.

- ClassGuid={nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn}

    - GUID

- Provider=%INF-creator%

    - INF 파일을 제공하는 제공자의 이름을 기록하는 지시자.

    - %%문자열의미, 설치 파일 내에 있는Strings 섹션에서 문자열의 값 찾아 대체

- LayoutFile=filename.inf[,filename.inf]...

    - 다른 INF 파일을 포함 할 때, Needs 지시자, Include 지시자 등을 대부분 가짐

- CatalogFile=filename.cat

    - WHQL로부터 인증 테스트를 거친 드라이버일 경우, 카탈로그 파일을 지시.

- DriverVer=mm/dd/yyyy[,x.y.v.z]

    - 드라이버 생성 날짜를 입력(윈도우2000이상)

 

*) SourceDisksNames 섹션

- 설치에 사용할 파일들이 보관된 경로를 설명하는 섹션

    - diskid=disk-description,,,subdir

        - diskid는 1,2,3처럼 서로 다른 수를 의미하는 식별 ID로 명시

        - disk-description은 파일이 보관된 볼륨의 이름을 명시

        - subdir은 볼륨 아래에 하위 경로를 따로 두는 경우에 사용

 

*) DestinationDirs 섹션

- 설치 과정 중 원본 파일이 복사될 장소를 가리키는 섹션

    - DefaultDestDir=dirid[,subdir]

        - dirid는 윈도우에서 정의된 디렉터리를 알려주는 ID

        ( 10:윈도우 디렉터리, 11:시스템 디렉터리,
         
12:드라이버 디렉터리(윈도우NT계통),시스템 디렉터리\IOSUBSYS 디렉터리(윈도우9x)

          17:INF 디렉터리, -1:절대 경로 )

        - subdir은 하위 경로

 

*) SourceDisksFiles 섹션

- 설치 과정 중에 사용할 원본 파일이 SourceDisksFiles 섹션에서 명시한 지시자 중 어떤 지시자 아래 존재하는지를 설명하는 섹션

- filename=diskid[,[subdir]]

    - filename은 설치 과정 중에 사용할 원본 대상 파일 이름을 기억

    - diskid는 SourceDisksFiles 섹션에서 설명하는 지시자ID를 나타냄.

    - subdir은 Diskid가 가리키는 디렉터리 아래의 하위 경로를 나타냄.

 

*) Manufacturer 섹션

- 제조사 정보를 보관하는 섹션. 여러 제조사 정보를 포함할 수도 있음.

- manufacturer-identifier

  [manufacturer-identifier]

- 형식

    - %strkey%=models-section-name|

       %strkey%=models-section-name[,TargetOSVersion][,TargetOSVersion]...

         - %strkey%는 제조사 이름,
         - models-section-name는 구체적인 모델정보를 담고 있는 섹션 이름,
         - TargetOSVersion는 지원 운영체제 버전.

 

*) ControlFlags 섹션

- 설치 과정 중에 특별히 추가 작업을 원하는 경우를 설명하는 섹션

- ExcludeFromSelect=*|

   ExcludeFromSelect=device-identification-string[,device-identification-string]...

     - *는 모든 섹션,
     - device-identification-string 섹션을 설치 과정에서 제외

- ExcludeFromSelect.nt=device-identification-string[,device-identification-string]...

    - NT 계통의 운영체제에서는 생략해야 할 섹션들을 설명

-ExcludeFromSelect.ntx86=device-identification-string[,device-identification-string]

    - NT 계통의 x86 시스템에서는 생략해야 할 섹션들을 설명

 

*) Strings 섹션

- 설치 파일 내에서 사용하는 모든 문자열 값을 설명하는 섹션

- strkey1=[“]some string["]

    - strkey1은 문자열 변수 이름을 정의

    - some string은 문자열 값을 정의

 

*) DefaultInstall 섹션

- 설치 파일의 컨텍스트 메뉴상의 “설치”를 선택했을 때 수행할 정보를 담는 섹션

 

*) ClassInstall32 섹션

- 설치 파일을 사용해 설치하는 항목 중에 새로운 디바이스 유형(Class)을 추가 설치할 때 사용하는 섹션.

 

 

 

3.2 이름이 정해져 있지 않은 섹션

*) Models 섹션

- Manufacturer 섹션의 지시자에서 명시한 섹션 이름이어야 한다.

- 설치할 장치 모델 정보를 담고 있다.

- device-description=install-section-name,pnp-id[,pnp-id...]

    - device-description은 설치된 이후에 장치 관리자 대화상자에서 보여질 장치의 이름

    - install-section-name은 이어질 DDInstall 섹션의 이름

    - pnp-id는 열거자가 열거한 장치를 위한 ID에 대응되어져야 하는 ID

 

*) DDInstall 섹션(DDInstall.NT)

- Models 섹션에서 지시자가 언급한 설치를 위한 섹션 이름.

- [CopyFiles=@filename | file-list-section[,file-list-section]...]

    - @filename은 복사할 원본 파일 이름을 바로 지정할 때 사용된다.

    - file-list-section은 여러 개의 원본 파일들이 복사되어야 하는 경우에 이들에 대한 정보를 기억하는 섹션 이름을 기록

- [CopyINF=filename1.inf[,filename2.inf]...]

    - 설치 가정 중에 복사하고자 하는 INF 파일의 이름을 적는다.

- [AddReg=add-registry-section[,add-registry-section]...]

    - 설치 과정 중에 추가하고자 하는 시스템 레지스트리 정보를 담고 있는 섹션 이름을 적는다.

- [Delfiles=file-list-section[,file-list-section]...]

    - 설치 과정 중에 지우고 싶은 파일들의 정보를 담고 있는 섹션 이름

- [Renfiles=file-list-section[,file-list-section]...]

    - 설치 과정 중에 이름을 바꾸고 싶은 파일들의 정보를 담고 있는 섹션 이름

- [DelReg=del-registry-section[,del-registry-section]...]

    - 설치 과정 중에 지우고 싶은 시스템 레지스트리 정보를 담고 있는 섹션 이름

- [LogConfig=log-config-section[,log-config-section]...]

    - 설치 과정 중에 해당하는 디바이스 장치에 할애할 입출력 주소 정보, 인터럽트 리소스 정보등을 담고 있는 섹션 이름.

 

*) DDInstall.Services 섹션(DDInstall.NT.Services)

- 하나 이상의 서비스를 등록하는 지시자로 이루어진 섹션.

- 드라이버는 윈도우에서 Win32 서비스 형태로 등록되므로 모든 드라이버는 이처럼 서비스로 등록되어야 함.

- AddService=ServiceName,[flags],service-install-section

    - ServiceName음 등록될 서비스의 이름을 명시

    - service-install-section은 설치될 서비스에 대한 구체적인 파라미터를 담고 있는 섹션에 대한 이름을 명시.

- Flags는 등록될 서비스의 역할을 설명.

    - 0x00000002 (Associate Service, 주 서비스 드라이버)

- DelService=ServiceName[,[flags]

    - ServiceName은 제거될 서비스의 이름을 명시

- flags

    - 0x00000004 (디버깅을 위해서 사용되는 이벤트 로깅 정보를 삭제하라는 의미)

    - 0x00000200 (서비스를 삭제하기 전에 우선적으로 서비스를 중지시키라는 의미)

 

*) DDInstall.HW 섹션(DDInstall.HW)

- 시스템 레지스트리의 열거자 키( HKLM\SYSTEM\CurrentControlset\Enum)의 하위 키에 해당하는 장치를 위해서 열거자가 만들어 놓은 디바이스의 키 아래에 원하는 변수 값을 기록하거나 지울 때 사용하는 섹션 정보.

- AddReg지시자,DelReg지시자

 

3.3 지시자(Directives)

*) AddReg 지시자

- 시스템 레지스트리에 특정 키와 변수들을 추가할 때 작성하는 지시자다.

- AddReg=add-registry-section[, add-registry-section]...

    - add-registry-section은 추가할 레지스트리 정보를 담고 있는 섹션

    - [add-registry-section]

        reg-root, [subkey], [value-entry-name], [flags], [value]

            - reg-root는 접근할 레지스트리 기준 키를 명시

                - HKCR : HKEY_CLASSED_ROOT를 지칭

                - HKLM : HKEY_LOCAL_MACHINE을 지칭

                - HKCU : HKEY_CURRENT_USER을 지칭

                - HKU : HKEY_USERS를 지칭

                - HKR

                    - DDInstall ( 장치의 소프트웨어 키 )

                    - DDInstall.HW ( 장치의 하드웨어 키 )

                    - DDInstall.Service ( 장치의 서비스 키 )

                        - 소프트웨어 키 : 설치되 이후 만들어지는 Class정보를 담고 있는 위치

                        - 하드웨어 키 : 열거자에 의해서 열거된 장치의 정보를 담고 있는 위치

                        - 서비스 키 : 사용되는 서비스 정보를 담고 있는 위치

                - subkey는 reg-root 키 아래의 하위 키를 명시

                - value-entry-name은 변수 이름을 명시

                - flags는 변수의 속성을 의미

                    - 0x00000000 ( 널 문자열 값 )

                    - 0x00000001 ( 바이너리 값 )

                    - 0x00010000 ( 다중 문자열 값 )

                    - 0x00010001 ( DWORD 형태 값 )

                    - value는 값을 의미

 

*) DelReg 지시자

- 시스템 레지스트리에서 특정 키와 변수들을 제거할 목정으로 작성하는 지시자

- DelReg=del-registry-section[, del-registry-section]...

    - del-registry-section은 지우고 싶은 레지스트리 키와 변수들을 정의하는 섹션 이름

 

*) CopyFiles 지시자

- 설치 과정 중에 복사할 파일들을 지정하는 지시자

- [MyCopyFiles]

    mydriver.sys

    filter.sys

 

*) CopyINF 지시자

- 설치 과정 중에 복사할 설치 파일들을 지정하는 지시자

- [MyMfDevice.NTx86]

    CopyINF = Sound.INF

 

*) DelFiles 지시자

- 설치 과정 중에 제거할 파일 목록을 담은 섹션을 지칭하는 지시자

 

*) RenFiles 지시자

- 설치 과정 중에 이름을 바꾸고 싶은 파일 목록을 담은 섹션을 지칭하는 지시자

- RenFiles=file-list-section[, file-list-section]...

    - file-list-section은 이름을 바꾸고 싶은 파일들의 목록을 담고 있는 섹션의 이름을 명시

    - [file-list-section]

        new-dest-file-name, old-source-file-name

 

*) AddService 지시자

- 설치 과정 중에 등록하고자 하는 서비스를 나열하는 지시자

 

*) DelService 지시자

- 설치 과정 중에 제거하고자 하는 서비스를 나열하는 지시자

 

*) Include 지시자

- 외부에 있는 다른 설치 파일을 포함하는 용도로 사용, Needs 지시자와 함께 사용

 

*) Needs 지시자

- 외부에 있는 다른 설치 파일을 포함하는 경우에 실제 사용할 섹션 명을 명시하는 지시자 ( 외부에 있는 USBSTOR.INF 파일을 열어서, USBSTOR_BULK_NT 섹션을 포함하도록

- [HajeSample]

    Include=USBSTOR.INF

    Needs=USBSTOR_BULK_NT


신고

'Programing > WDM' 카테고리의 다른 글

[ WDM ] 설치 파일( INF )에 대한 이해  (0) 2010.06.06

 태그 : 

1. SDK 다운로드

*) 개발자 사이트
   -  http://developer.android.com/index.html


   - 각 OS에 맞는 SDK를 Download한다.



2. 이클립스 다운로드

*) 이클립스 홈페이지
   - http://www.eclipse.org/





   - 각 OS에 맞는 이클립스를 Download한다.



3. SDK와 이클립스 연동하기

   - 다운로드 받은 이클립스를 압축을 풀고, "eclipse.exe"를 실행 한다.
     ( 이클립스를 실행하기 위해서는 java sdk가 설치 되어 있어야 한다. http://java.sun.com/ 에서
      JDK(Java SE)를 다운 받아 설치하면 된다. )

   - 경로 설정등을 하는 화면이 나타날 것이고, 초기화면이 나타나면 정상적으로 실행된 것이다.

   - 이제 이클립스 안드로이드 플로그인을 다운로드 한다. 아래 화면의 빨간 사각형을 차례로 클릭한다.



   - Installing the ADT Plugin 부분으로 이동하면 아래와 같은 화면이 나올 것이고,
     빨간 사각형 부분의 내용인 Eclipse3.5( Galileo )에 해당하는 글을 따라서 하면 된다.



   - 먼저 이클립스를 실행하고, Help -> Install New Software 선택한다.
     Available Software 화면에서 Add버튼 클릭한다.



   - Add Site화면이 나타나면
     "Name"에는 "Android Plugin"을 입력하고,
     "Location"에는 https://dl-ssl.google.com/android/eclipse/ 을 입력한고 OK버튼을 누른다.



   - 그러면 위와 같은 화면이 나올 것이고, 나오지 않는 다면, 빨간색 사각형의 리스트를 보는 버튼을 눌러서,
      해당 Location을 선택해준다.

   - 그리고, 플러그인 목록을 모두 체크한 후 Next 버튼을 누른다.



   - Install Details 화면이 나오면, Android DDMS와 Android Development Tools를 확인하고 Next 버튼을 누른다.
      그리고, 사용자 약관에 동의하고 Finish 버튼을 누르면 install이 진행된다.

   - Install이 완료되고 나서 이클립스를 재실행한다.



   - 이클립스가 재실행 되고 나서는 툴바에 안드로이드 아이콘이 보이게 될 것이다.

   - 이제는 Android SDK Directory를 가리키도록 이클립스의 Preferences를 수정해야한다.

   - 먼저 처음에 받았던 Android SDK의 압축을 풀고, 적당한 경로에 옮겨 놓는다.
     ( ex. D:\android-sdk-windows )



   - 이클립스의 메뉴 Window -> Preferences를 선택하고,
     Android탭에서 SDK Location 항목에 D:\android-sdk-windows를 입력한다.

   - Apply 버튼을 클릭하고, OK 버튼을 누른다. 작업 진행이 완료될 때까지 기다린다.



   - 작업이 완료되고, 툴바의 안드로이드 아이콘을 클릭해서, 두번째 탭의 Installed Packages를 클릭하면,
     위의 빨간색 사각형 부분의 항목을 확인할 수 있을 것이다.( 나머지 항목은 뒤에서 설치한다. )



4. Available Package 추가 등록하기

   - 이제는 Available Package 추가등록을 할 것이다.

   - 툴바의 안드로이드 아이콘을 클릭한다.
     세번째 탭인 "Available Packages" 항목을 클릭한다.


   - check박스를 체크하면, 설치할 수 있는 package들이 나올 것이다.
     여기서 이름은 같은데 버전이 다른 패키지들이 보일 것이다.
     이 때 가장 최근 버전만 체크해서 설치하는 것이 좋다.

   - 체크를 다 했으면, "Install Selected"버튼을 눌러 다음 화면으로 넘어간다.

   - Choose Packages to Install 화면이 나오면 오른쪽에 "Accept All"을 체크한 후
     "Install Accepted" 버튼을 눌러 설치를 시작한다.

   - 인스톨이 완료된 후 Installed Packages 탭에서 설치된 패키지들을 확인할 수 있다.

   - 앞으로 더 필요한 패키지들이 있다면 위와 같은 방법으로 추가로 설치하면 된다.



5. Virtual Device 생성하기

   - 이제 안드로이드폰 애뮬레이터를 생성하도록 하겠다.

   - 툴바의 안드로이드 버튼을 클릭한다.



   - 첫번째 탭의 "Virtual Devices"메뉴를 보면 아직 등록된 AVD가 없을 것이다.
    여기서 New버튼을 눌러서 등록을 시작한다.



   - Create new AVD창에서 Name을 입력하고, Target을 선택한다.
     그리고 Create AVD 버튼을 누른다.



   - 그러면 위와 같이 AVD가 등록된 것을 확인할 수 있을 것이다.
     그리고, Start 버튼을 누르게 되면 안드로이드 에뮬레이터가 실행되게 된다.


   - 위와 같은 화면이 처음에 나타나게 되고, AVD가 완전히 로딩될 때까지는 시간이 좀 걸린다.( 약 3분 정도 )

   - 로딩이 완료되면 아래와 같은 화면이 나타난다.


   - 안드로이드를 개발할 기본적인 준비가 다 되었다.
     이제 개발하고 애뮬레이터에 올려보면서 테스팅을 할 수 있을 것이다.





신고

'Programing > Android' 카테고리의 다른 글

[ Android ] 개발 환경 구축하기  (0) 2010.06.06

 태그 : 

티스토리 툴바