2011-01-19 12 views

risposta

18

mettere qualcosa come

[[NSUserDefaults standardUserDefaults] setObject:[NSDate date] forKey:@"kLastCloseDate"]; 

sia

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

Quindi controllare la differenza in fase di avvio:

NSDate *lastDate = [[NSUserDefaults standardUserDefaults] objectForKey:@"kLastCloseDate"]; 
NSTimeInterval timeDiff = [[NSDate date] timeIntervalSinceDate:lastDate]; 
// your stuff 

sia

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

Nell'applicazione delega al metodo - (void)applicationDidEnterBackground:(UIApplication *)application, è sufficiente scrivere l'ora corrente su un file. Quindi, in applicationWillEnterForeground: o applicationDidFinishLaunching, leggi questo file e confrontalo con l'ora corrente. La differenza ti dirà da quanto tempo la tua applicazione è stata l'ultima.

+0

Posso consigliare NSUserDefaults in modo specifico? –

Problemi correlati