如何判断我的应用上次开启时的时间?即使我的应用程序没有在后台运行,这仍然可以监控吗?
感谢。
答案 0 :(得分:18)
添加类似
的内容[[NSUserDefaults standardUserDefaults] setObject:[NSDate date] forKey:@"kLastCloseDate"];
中的
- (void)applicationWillTerminate:(UIApplication *)application
- (void)applicationDidEnterBackground:(UIApplication *)application
然后检查启动时的差异:
NSDate *lastDate = [[NSUserDefaults standardUserDefaults] objectForKey:@"kLastCloseDate"];
NSTimeInterval timeDiff = [[NSDate date] timeIntervalSinceDate:lastDate];
// your stuff
中的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
- (void)applicationWillEnterForeground:(UIApplication *)application
答案 1 :(得分:1)
在您的应用程序委托- (void)applicationDidEnterBackground:(UIApplication *)application
方法中,只需将当前时间写入文件即可。然后,在applicationWillEnterForeground:
或applicationDidFinishLaunching
中,阅读此文件并与当前时间进行比较。差异将告诉您自应用程序最后一次以来有多长时间。