2012-04-04 37 views
1

我是IOS中的Dropbox开发中的新手,我仍在学习如何在我的应用中实现Dropbox,该应用是文本编辑器,我希望支持上传和下载文件在保管箱中。在我的应用程序中,我只能对文本进行一些更改,然后将其上传到Dropbox,但我无法将其恢复到最新版本。我已阅读Dropbox Rest API并阅读有关https://api.dropbox.com/1/restore/<root>/<path>如何以编程方式恢复Dropbox中的文件

但我不知道该怎么办,有人可以帮助我吗?

谢谢

回答

1

试试这个

/*恢复在路径的文件,因为它的存在,在给定的转速和恢复后返回恢复 文件的元数据*/

- (void)restoreFile:(NSString *)path toRev:(NSString *)rev; 

其中path是必须恢复的DropBox文件的路径,rev是要修复的修订版本

和它小号委托方法是

- (void)restClient:(DBRestClient*)client restoredFile:(DBMetadata *)fileMetadata; 
- (void)restClient:(DBRestClient*)client restoreFileFailedWithError:(NSError *)error; 

,您可以用这些来获取特定文件的修订列表

/*加载在路径较过去文件的修订,直到10 DBMetadata对象的列表*/

- (void)loadRevisionsForFile:(NSString *)path; 

/*同上,但具有可配置限制DBMetadata对象的数目返回,高达1000 */

- (void)loadRevisionsForFile:(NSString *)path limit:(NSInteger)limit; 

及其委托的方法是

- (void)restClient:(DBRestClient*)client loadedRevisions:(NSArray *)revisions forFile:(NSString *)path; 
- (void)restClient:(DBRestClient*)client loadRevisionsFailedWithError:(NSError *)error; 

例如

NSString *filePath = @"/Contacts"; 
    NSString *revisionStr = @"a1067dc176"; // sample revisionString 

    [[self restClient] loadRevisionsForFile:filePath limit:10]; 

    [[self restClient] restoreFile:filePath toRev:revisionStr]; 

//委托方法

- (void)restClient:(DBRestClient*)client loadedRevisions:(NSArray *)revisions forFile:(NSString *)path{ 

    for (DBMetadata *file in revisions) 
    { 
     NSLog(@"MetaData's Revisions \t%@", file.rev); 
    } 
} 
- (void)restClient:(DBRestClient*)client loadRevisionsFailedWithError:(NSError *)error{ 

} 

- (void)restClient:(DBRestClient*)client restoredFile:(DBMetadata *)fileMetadata{ 
    NSLog(@"Restored FileMetaData Path : %@",fileMetadata.path); 
     NSLog(@"Restored FileMetaData rev : %@",fileMetadata.rev); 
} 
- (void)restClient:(DBRestClient*)client restoreFileFailedWithError:(NSError *)error{ 
    NSLog(@"There was an error restoring the file - %@", error); 
} 
相关问题