2012-04-04 71 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); 
} 
相關問題