2012-02-17 9 views
1

나는이 iOS5.0와 아이폰 4에 잘 불려갑니다에도 불구하고, iOS5.0iPhone3GS는 차단 대기열을 지원합니까?

을 실행 결코 극복 다음 블록을 실행 iPhone3GS에 내 코드의 일부에 문제가 실행 해요.

로그 문이 나타나지 않으며 중단 점이 실행되지 않습니다. 나는 체크했다. 모션 매니저와 큐가 모두 null이 아니다.

[motionManager startDeviceMotionUpdatesToQueue:motionQueue withHandler:^(CMDeviceMotion *motion, NSError *error) { 

      NSLog(@"motion event received"); 

//... 
}]; 

내가 누락되었거나 차단 대기열없이 작동하도록 코드를 다시 작성해야합니까?
ussue에 대한 의견을 보내 주셔서 감사합니다.

업데이트 :

나는이 방법을 확인했습니다, 그리고 작동 :

[motionManager startAccelerometerUpdatesToQueue:motionQueue withHandler:^(CMAccelerometerData *accelerometerData, NSError *error) { 
     NSLog(@"accelerometerData event received"); 
    }]; 

답변

3

이 블록 큐와는 아무 상관이있다. 귀하의 문제는 디바이스 모션 이벤트가 가속도계와 자이로 스코프 모두를 필요로한다고 생각합니다 (그리고 -deviceMotionAvailable으로 쿼리 가능). 그러나 iPhone 3GS에는 자이로 스코프가 없습니다. 따라서 비 블록 기반 장치 모션 방법조차도 당신을 위해 작동하지 않습니다. 가속도계만으로도 사용자의 요구에 충분히 만족하는지 확인해야합니다. 그렇지 않으면 자이로 스코프가 필요하도록 앱을 제한해야합니다.

관련 문제