2011-07-12 53 views
1

僅僅是關於DropBox的一個非常簡短的問題 - 有什麼方法可以找出上傳和下載都完成的時間嗎?DropBox API - 如何查找dropBox是否與其業務完成

有功能

-(void)restClient:(DBRestClient *)client uploadedFile:(NSString *)srcPath 
-(void)restClient:(DBRestClient *)client loadedFile:(NSString *)destPath 
-(void)restClient:(DBRestClient *)client loadedFileFailedWithError:(NSError *)error 
-(void)restClient:(DBRestClient *)client uploadFileFailedWithError:(NSError *)error 

但是有一些功能,它告訴你,當所有這些都結束了?我需要進行同步,即可能上傳和下載文件,然後停止動畫,告訴用戶數據庫仍在執行某些操作。例如。如果首先調用loadedFile並結束動畫,而上傳仍在進行中,則顯然這不是好事。

所以有這樣的事情:dropBox停止工作,我們現在可以告訴用戶什麼上傳/下載/如果有任何錯誤?

在此先感謝並對不起,如果我忽略了這些明顯的問題,但我發現dropBoxAPI沒有很好地記錄。

回答

2

您必須手動執行此操作。沒有嵌入的命令來做到這一點。只需創建一個int並將其值設置爲您必須傳輸的文件數。當每次傳輸完成或失敗時,減小該int的值。如果它達到0,結束動畫。

+0

THanks ...實際上這是我剛剛提出的解決方案。然而,我認爲有人會建議一個非常靈活的解決方案,我會撤消所有事情,因爲它太麻煩了... dropBox API還有很長的路要走,我想用iCloud這將是它的終點...做一個簡單的同步是非常困難的。感謝您的建議! –

0

很簡單: 只需執行一個NSMutableArray即可在其中存儲所有dbRestClients 當您收到完成或失敗消息時,請除去dbRestClient。 這樣,您可以立即知道有多少客戶正在運行,並且如果您捕獲「進度」消息,則可以計算全局進度。 提示:當我分配dbRestClient時,我在AccessibilityLabel屬性中放入了一些信息,以便我知道它們中的哪些響應。

祝你好運。