0

我正在使用 NSURLConnection 发送与 Web 服务的一项操作相关的数据。现在用户将能够离线工作,我将需要实现一个同步按钮,该按钮将发送与 n 个操作相关的数据,我不确定如何始终如一地处理 NSURLConnection 队列。

有什么想法吗?

4

1 回答 1

1

我已经处理了离线接受用户提交并使用 NSUserdefaults 设置队列。如果用户在线,该条目将访问 Web 服务以获取单一类型的提交和数据库条目。

如果离线,我将用户的数据对象存储到 NSUserDefaults 中并设置一个标志,表明我有需要上传的内容。

当可达性发生变化时,如果我有要上传的数据,我会将内容发送到一个稍微不同的服务,我已经设置了该服务来接收批处理数据。唯一的区别是我设置了接受序列化对象组的批处理服务,然后在服务器端反序列化并执行许多数据库提交。

编辑:我创建了一个当前未连接到任何网络服务的示例项目,但是我正在使用 tonymillion 的可达性类来测试在线连接,并且正在设置一个队列,以确定在没有连接时是否按下按钮。该项目将时间戳记录到控制台(如果存在有效连接)。如果不存在连接,我会将时间戳存储到数组中,当连接返回时,我会遍历时间戳并将存储的时间戳记录在数组中。
https://github.com/propstm/webserviceQueueSample

于 2012-10-24T20:54:39.010 回答