我无法在我的应用中实施Dropbox备份。我不希望每次下一次备份都覆盖以前的备份。
我先试了这个:
newEntry = mDBApi.putFile("/file.bak", inputStream, file.length(), null, null);
创建test.bak然后test.bak(1)test.bak(2)等等......
然后我尝试保存第一个文件的修订版ID,然后将其传递给每次上传。
newEntry = mDBApi.putFile("/file.bak", inputStream, file.length(), revision, null);
我得到file.bak然后是file.bak(冲突副本......)等等
我做错了什么? Dropbox文档说当2个用户尝试同时上传同一个文件时会出现冲突的副本,但这不会发生在这里
编辑:我可以通过删除文件1st来解决它,但这听起来不太专业答案 0 :(得分:5)
只需查看Dropbox API。
它提供了一种覆盖现有文件(具有相同文件名)的方法:putFileOverwrite
或者,如果您希望取消上传,请创建putFileOverwriteRequest并致电upload()
将其启动。
答案 1 :(得分:1)
试试这个:
try {
DropboxAPI.Entry newEntry = mDBApi.putFileOverwrite("/file.bak", inputStream, file.length(), null);
} catch (DropboxUnlinkedException e) {
Log.e("DbExampleLog", "User has unlinked.");
} catch (DropboxException e) {
Log.e("DbExampleLog", "Something went wrong while uploading.");
}