본문 바로가기
Programming/iOS

xcode simulator에서 가속도계를 사용해 보자.

by 신규하 2009. 12. 6.
iPhone 소프트웨어를 개발하다 보면, 시뮬레이터에서는 가속센서(accelerometer)를 지원하지 않아서 답답 할 때가 많습니다.
항상 실기에 올려서 테스트 할려고 해도 불편한게 이만 저만이 아닙니다.
디버깅 하기도 귀찮아 지고요.

이럴 때 가속도계 시뮬레이터(acclerometer-simulator)를 사용하면 가볍게 해결이 됩니다.

주소 : http://code.google.com/p/accelerometer-simulator/wiki/Home

사용법도 간단합니다.

  1. 소스 코드를 체크아웃 받습니다. 터미널에서 아래와 같이 치면 받아 집니다.
    svn checkout http://accelerometer-simulator.googlecode.com/svn/trunk/ accelerometer-simulator-read-only

  2. AccSim.xcodeproj 파일을 xcode에서 엽니다.
  3. Info.plist의 개발자 인증서를 자신이 가지고 있는 인증서로 설정 해 줍니다.
  4. 컴파일을 해서 자신의 실기에 올립니다.
  5. 어플리케이션을 실행합니다.
실행을 하면, 위와 같은 탭바가 나옵니다. 아이폰 또는 아이팟 터치를 이리저리 움직여 보면, Values값이 변하는 것을 보실 수 있을 겁니다. 이 값이 시뮬레이터로 전달 되게 되는 겁니다.



그럼, Network 탭에서 Network를 ON으로 변경하시면, 아이폰의 센서의 값이 UDP를 통해서 시뮬레이터의 어플리케이션으로 전달 되게 됩니다.
혼자서 개발 하시는 분들은 Broadcast를 해 놓고 사용하셔도 충분하지만, 협업이나 같은 네트워크 상에서 개발하시는 분들은 Unicast를 설정하셔서 사용하길 권장 합니다.

그리고 어플리케이션에서 이런 가속도계(Accelerometer)의 값을 받기 위해서는 약간의 설정만 해 주시면 됩니다.

우선, 체크아웃(Checkout) 받은 소스에서 "Simulator classes" 라는 폴더가 있습니다. 이 폴더 안에 있는 내용을 사용할 어플리케이션의 프로젝트에 추가해 줍니다.
그리고 소스에 아래와 같이 포함해 주면 됩니다.
참, 간단하죠?
#import "AccelerometerSimulation.h"
혹시 다른 포트가 충돌이 나거나 다른 포트를 사용 하고 싶으시다면,
#define kAccelerometerSimulationPort 10552
이렇게 또 추가해 주시면 됩니다.

이런 과정을 거치고 실행해 보시면, 아이폰에서 움직이는 데로 시뮬레이터가 동작을 할겁니다.

그러면, 우아한 아이폰 개발 하세요~ ^^*

CheckOut 받기 귀찮으신 분을 위한 다운로드 :

추가로 위 프로그램은 무료 이지만, iSimulate라고 상용도 있습니다.
이건, GPS와 멀티터치까지도 가능합니다.

댓글