我正在尝试开发执行以下任务的 iPhone 应用程序:
- 用户将他的电影时间和日期存储在 plist 中。
- 在电影开始之前,例如开始前30分钟,应用会给他通知
现在我要求两点:
- plist 上只有日期字段我们如何一次存储完整的时间和日期
- 我们如何让应用程序即使在后台也能将当前时间与 plist 上的电影时间进行比较
如果可能,请用小例子告诉我。 (让应用程序在后台进行比较)
例子:
电影.plist - ID - 电影名称 - 放映时间
如果我有记录
编号:1 电影名称:游戏 B 2 放映时间:2014-05-22 2:00AM
今天是21-5
我希望应用程序在 : 明天凌晨 1:00 发送通知
通知码没有问题我知道是这样的
UILocalNotification *localNotification = [[UILocalNotification alloc] init];
localNotification.fireDate = [NSDate dateWithTimeIntervalSinceNow:2];
localNotification.alertBody = msg;
localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.applicationIconBadgeNumber = [[UIApplication sharedApplication] applicationIconBadgeNumber] + 1;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
问题是应用程序将如何在特定的时间和日期发送通知
请注意,这个东西不仅仅是在 plist 中的一条记录,也许用户会在不同的日期和时间存储 10 部电影。
另一个例子:
**如果我打开应用程序并转到“保存新电影”,我会输入 3 个不同的电影名称和放映时间 然后我点击保存 所有细节都将保存在 Movies.Plist 中 然后我关闭了应用程序。现在应用程序应该在任何 Plist 电影开始之前给我本地通知。 这就是整个想法。**
最佳答案
NSDates 存储日期和时间。例如,当前日期和时间可以表示为:2014-05-21 17:19:13 +0000
。
至于后台进程,就不用了。当用户设置电影时间时,在设置时间前 30 分钟安排通知。不会有任何正在进行的比较,通知将在正确的时间被触发时触发..
关于ios - 如何在 plist 中存储时间和日期并将其与现在时间 iOS 7 进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23789508/