自从上次在iOS上打开应用程序多久以来?

时间:2011-01-19 14:03:04

标签: iphone objective-c ipad ios time

如何判断我的应用上次开启时的时间?即使我的应用程序没有在后台运行,这仍然可以监控吗?

感谢。

2 个答案:

答案 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中,阅读此文件并与当前时间进行比较。差异将告诉您自应用程序最后一次以来有多长时间。