2012-05-03 5 views
0

내 iPhone 애플리케이션에서 애플리케이션이 활성화 된 시간을 추적합니다. 특정 값 (예 : 15 분)을 초과하면 로그인보기가 경고보기로 사용자에게 표시됩니다. 응용 프로그램이 백그라운드에서 너무 오래 있으면이 동작은 유사합니다. 그런 다음 앱이 다시 활성화되면 경고보기가 사용자에게 표시됩니다.앱이 오랫동안 백그라운드에있는 경우 UIAlertView가 표시되지 않습니다.

그러나 문제는 응용 프로그램이 매우 오랫동안 배경에 있고 응용 프로그램이 다시 활성화 될 때입니다. AlertView가 사용자에게 표시되지 않습니다. 세션이 시간 초과되었는지 여부를 알리기 위해 NSNotifications를 사용하고 있습니다. > 배경에 앱을 넣어 - -

기본 흐름이

시작 앱처럼> applicationDidBecomeActive : -> 확인 세션이 시간 초과 여부 ->보기 로그인보기 -> 포스트 로그 아웃 알림

수신기 alertview가 표시됩니다. login.htm뿐만 아니라 애플 리케이션 델리게이트에 로직을 넣었습니다. 그러나 두 가지 시나리오 모두에서 alertview는 오랜 시간 동안 배경에 표시되지 않습니다.

내 질문 일부 지연 알림을받을 수 있습니까? 로그인보기가 나타난 후 수신하고 싶습니다.

답변

1

수신 통지는 앱의 위임 방법이며 구현 된 곳에서 수신됩니다. wheather 어플리케이션이 활성화되어 있는지 확인하기 위해 다른 플래그를 설정할 수 있습니다.

이 플래그 = 아니오이 isActive 설정 resigactive 할 응용 프로그램의 예

;

및 수신 통지 확인 isActive 플래그 설정 hasReceivedNotification = YES; 대체로

및 어플리케이션에

저장 데이터 aplication 활성이었다 체크 되었는가 여부 활성 원격 통지를 수신 설정된 제 플래그 shouldShowAlertOnLoginView = YES; // 통지 데이터는

및 loginview 체크 appDelegate.shouldShowAlertOnLoginView에서 YES ==

다음 데이터

와 경고 표시를 표시하는 경우에
관련 문제