2011-04-13 2 views
0

애플 문서가 1 :ios 4.3.1 applicationWillResignActive 동작이 버그가 있습니까? 이 이벤트 상태에 대한

이 방법은 응용 프로그램이 상태를 비활성 활성에서 이동에 관한 알려이라고합니다. 이는 유형의 일시적인 중단 (예 : 전화 수신 또는 SMS 메시지) 또는 사용자가 응용 프로그램을 종료하고 백그라운드 상태로 전환하기 시작할 때 발생할 수 있습니다. 비활성 상태의 응용 프로그램은 계속 실행되지만 응답자에게는 수신 이벤트가 발송되지 않습니다.

마지막 문장과 다른 행동을보고 있습니다. 타이머 실행에 대한 응답으로 데이터를 수집하고 기록하는 Xcode 디버거에서 응용 프로그램을 실행하면 절전/깨우기 단추를 눌러 절전 모드로 전환하면 무기한 데이터 수집 및 로깅이 계속됩니다.

그러나 "정상적으로"(즉, XCode 디버거가 아닌) 앱을 실행하면 기기가 절전 모드로 전환 된 직후 데이터 수집 및 로깅이 거의 중지됩니다.

애플 문서는 말을 당신은 지속적인 작업을 일시 중지하려면이 방법을 사용한다

(강조 광산), 비활성화 타이머와 OpenGL ES 프레임 속도를 스로틀.

그러나 실제로 타이머를 비활성화해야하는 이유는 설명하지 않습니다.

관찰 된 동작 (비활성 상태가 내 타이머 및/또는 전체 응용 프로그램을 멈추는 것처럼 보입니다)이 버그인지, 아니면 실행중인 응용 프로그램에 대해 문서가 잘못되어 있는지 파악하려고합니다. 또는 디버거에서 앱의 동작이 "실제"동작과 다른 이유는 무엇입니까?

도움이나 설명을 제공해 주시면 감사하겠습니다.

답변

0

다양성에 대한 자세한 내용은 application states을 참조하십시오. 앱은 대개 오래 동안 비활성 상태로 머물러 있지 않지만 백그라운드 또는 일시 중지 상태로 전환됩니다.

+0

Caleb, 내가 "여기에 설명 된 경우에 사용자가 화면을 잠글 때만 특정 시간 동안 앱이 비활성 상태로 유지됩니다."라는 해당 문서를 읽었습니다. –

+0

그러나 "어떤 기간"이 될지는 말하지 않습니다. 나는 어떤 상황에서도 당신이 활동하지 않는다고 생각할 수는 없다고 생각합니다. – Caleb

0

나는 (! 마지막으로) 제가 보는 것을 설명하는 것 스레드 발견

What happens to an iPhone app when iPhone goes into stand-by mode?

그것은 엑스 코드에 연결되지 않은 행동의 차이를 나타납니다,하지만 장치 때문에 대신입니다 (디버깅을 허용하기 위해) USB를 통해 연결되므로 iOS는 연결되고 충전되기 때문에 화면이 잠긴 후 절전 모드로 전환되지 않습니다.

장치가 연결되어 있지 않으면 화면이 잠긴 후 잠시 (약 20 초) 장치가 잠자기 상태가됩니다. 주 CPU의 모든 작업이 중단됩니다.

그래서 Apple 문서는 잘못이 아니며, 발생하는 비활성 -> 휴면 전환을 기술하지는 않으면 불완전합니다.

(이 질문을 삭제해야합니까?)

관련 문제