4

我创建了一个简单的 iOS 测试应用程序,它在本地创建一个文件并将其上传到相关的保管箱共享。我的目标是根据某些事件(按钮按下)不断更新这个文件(覆盖它)。文件的内容只是事件发生时的当前日期和时间。

当我第一次运行该应用程序时,每次上传都有效 - 如果文件在被覆盖(更新)之前存在,则使用以下命令:

NSString * destination = @"/";
NSString * rev = [_fileDetailsDict objectForKey:[destination stringByAppendingString:fileName] ];
[[self restClient] uploadFile:fileName toPath:destination withParentRev:rev fromPath:fullPath];

其中 _fileDetailsDict 保存父 rev,需要覆盖文件而不是创建副本。

问题在于,如果应用程序第二次尝试更新文件(基于我按下按钮),我总是会从 Dropbox 收到“复制冲突”错误响应。相反,如果我重新启动我的应用程序,更新就会再次发生。起初我认为这是一个时间问题,但即使我等待几分钟按下按钮,这个问题仍然存在。

它“感觉”好像我没有以某种方式关闭上传到保管箱。我错过了什么?

4

1 回答 1

0

尝试将 nil 传递给 withParentRev 参数。我猜你知道 files .rev 参数的用法,我尝试将 nil 传递给参数,它每次都创建一个新文件(不是副本)。

可能这对你有很大帮助。当我遇到类似问题时,我提到了这个。

于 2013-04-27T15:48:45.677 回答