2014-02-25 3 views
0

iOS 앱이 백그라운드에서 (예를 들어) 30 초 후에 활성화 될 때 상태를 재설정하려고합니다.잠시 후 백그라운드에서 iOS 앱을 재설정하십시오.

나는 Application does not run in background modeUIApplicationExitsOnSuspend을 plist로 설정했으나 일정 시간이 지나기 전에 즉시 앱 상태를 재설정합니다. 앱이 얼마 동안 백그라운드에서 실행 된 후에이를 트리거 할 수있는 방법이 있습니까?

답변

2

AppDelegate applicationDidEnterBackground : 앱이 백그라운드를 입력하면 호출됩니다. 여기

- (void)applicationDidEnterBackground:(UIApplication *)application; 

을 enterBackGroundTime을 저장하고 전경 applicationWillEnterForeground:를 입력 할 때 (응용 프로그램은 다시 사망하고 시작하는 경우) 또는 - (BOOL)application:didFinishLaunchingWithOptions: (전경 배경 응용 프로그램이있는 경우)를 호출합니다. 당신은 enterBackGroundTime와 enterForeGroundTime의 차이가 얻을

- (void)applicationWillEnterForeground:(UIApplication *)application; 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; 

당신은 계산 여기 enterForeGroundTime를 얻을 그것을

+0

방법 "차이"에? 어쨌든 이것이 최적의 방법이라고는 생각하지 않습니다. 타이머가 있어야합니다 ... – rkh

+0

enterBackGroundTime = [NSDate date]; 및 enterForeGroundTime = [NSDate 날짜]; NSDate timeIntervalSinceDate :를 사용하여 초 단위로 diffrence를 얻을 수 있습니다. – larva

+0

:) 어쩌면 그것은 최적의 방법은 아니지만 문제가있는 응용 프로그램을 처음 실행할 때 – larva

관련 문제