在iOS中比较允许用户再次发布的时间
我正在开发一个示例应用程序,它向服务器发布一个字符串。我想允许用户在上一篇文章发表两分钟后发表文章。我可以在服务器端执行此操作,但当用户的internet连接速度较慢时,可能需要很长时间才能从服务器获得响应。所以,我计划在客户端(iPhone)上实现这一点。我只想比较一下当前帖子和以前帖子的时间。谁能帮我节省上一篇文章的时间。很抱歉,如果有人觉得这个问题很愚蠢。这需要从架构的角度重新思考 如果用户发帖,那么您可以计算时间。。。但是如果用户试图发布,响应失败,那么您需要再次重置时间。因此,这与您担心服务器的响应可能需要很长时间是一样的 假设一切顺利: 你需要知道这篇文章什么时候成功发布。然后您需要得到响应并将时间节省到某个地方,可以告诉我userdefaults或plist 这将有助于:-在iOS中比较允许用户再次发布的时间,ios,objective-c,datetime,time,Ios,Objective C,Datetime,Time,我正在开发一个示例应用程序,它向服务器发布一个字符串。我想允许用户在上一篇文章发表两分钟后发表文章。我可以在服务器端执行此操作,但当用户的internet连接速度较慢时,可能需要很长时间才能从服务器获得响应。所以,我计划在客户端(iPhone)上实现这一点。我只想比较一下当前帖子和以前帖子的时间。谁能帮我节省上一篇文章的时间。很抱歉,如果有人觉得这个问题很愚蠢。这需要从架构的角度重新思考 如果用户发帖,那么您可以计算时间。。。但是如果用户试图发布,响应失败,那么您需要再次重置时间。因此,这与您担
NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
NSTimeInterval currentTime = [[NSDate date] timeIntervalSince1970];
NSString* timeStr = [NSString stringWithFormat:@"%f", currentTime];
float recentPostTime = [[defaults objectForKey:@"Recent_Post_Time"] floatValue];
if(currentTime-recentPostTime > 120.0f)
{
//Post to server here..
//Update Recent Post Time in user defaults
[defaults setObject:timeStr forKey:@"Recent_Post_Time"];
[defaults synchronize];
}
else
{
//Alert the user that he/she can't post within 2 minutes again
}
您可以使用NSUserDefaults来保存以前的时间。NSUserDefaults可以存储NSDate对象,因此无需将日期转换为字符串。非常感谢,我将继续处理您所说的内容,这更有意义……;)