我有一个使用ASIFormDataRequest将数据提交到远程网站的应用程序。我希望允许用户将它们存储起来以便以后上传(如果它们处于脱机状态)(例如:iPod touch或超出单元格覆盖范围等)。 ASINetworkQueue是否适合使用?我想我会将请求存储在属于app delegate的队列中,每当添加新的提交或启动应用程序时,都会测试可达性,如果好的话,将完成队列中的每个请求。
这个逻辑是否正确? (我知道在应用启动时立即检查可达性是不好的做法,但我会把它调整到适当的时间。)
如果是这样,我的下一个问题是,如何在发布之间保持ASINetworkQueue,无论是冷还是后台?我想这将涉及将其写入NSData并将其写入NSUserDefaults甚至文件。
感谢您的帮助!
答案 0 :(得分:1)
如果您要异步上传数据但处理脱机使用,我建议将数据写入本地数据库或文件,然后为某个状态设置某种“上传时间”时间戳。当您的应用程序启动时,您可以在本地数据库中查询尚未上载的任何对象。我不知道你的应用程序在做什么,但你可能会发现这种方法不易出错,并且更好地通过用户界面向用户提供适当的反馈。