我想为我的应用程序提供一项功能,用户可以将应用程序置于后台,当用户重新启动它时,应用程序可以检查当前时间并与旧时间进行比较,比如每1小时应用程序可以触发自动刷新。
我的问题是我不知道如何在应用程序转到后台时保存时间对象并在启动时读取它。
这方面的最佳做法是什么?提前谢谢。
答案 0 :(得分:1)
您可以使用NSUserDefaults来节省时间。
使用app委托方法:
- (void)applicationWillResignActive:(UIApplication *)application {
//When application is going into background
[[NSUserDefaults standardUserDefaults] setObject:[NSDate date] forKey:@"backgroundTime"];
}
- (void)applicationWillEnterForeground:(UIApplication *)application {
//When application comes back from background state
NSDate *prevDate = [[NSUserDefaults standardUserDefaults] objectForKey:@"backgroundTime"];
NSDate *currDate = [NSDate date];
NSTimeInterval interval = [currDate timeIntervalSinceDate:prevDate];
if (interval / 3600.0 > 1.0) {
//Refresh your application
}
}