2014-07-16 48 views
0

如果有人已經使用了LZMA SDK的iOS包裝器https://github.com/mdejong/lzmaSDK,並且能夠調整它以查看取消存檔的進度,請幫助。LZMA SDK iOS顯示進度

我打算在iOS中使用此SDK來提取一個16MB文件,該文件解壓縮爲一個150MB文件,這需要大約40秒才能完成。爲了顯示解壓縮的進度,有一些回調是很好的。

非常感謝幫助。 謝謝

回答

0

所以,我最近看了很多這個問題,說實話,你所能做的最好的事情就是尋找特定tmp目錄中的所有文件,然後將它們計算在內並與已知大小N進行比較。試圖在庫中執行此操作的問題是,它跨越多個運行時,並且回調想法使代碼變得混亂。此外,由於7z壓縮的方式,回調不會有太大的幫助。爲了解碼,需要在解壓縮特定文件之前構建解壓縮字典,並且構建字典的過程需要很長時間才能寫入第一個文件。因此,如果您在應用中顯示「已完成百分比」計數器顯示已完成多少工作,則長時間顯示0%,然後跳至50%,然後跳至90%或100%。基本上,即使實施它也不會有用。

0

您可以嘗試最新的LZMA SDK(15.06)的C++端口,而不需要描述上述限制(C版本)。內存分配和IO讀/寫運行時可以調整,加上密碼加密封存,平滑的工作進展情況,LZMA & LZMA2存檔類型等

GitHub上:https://github.com/OlehKulykov/LzmaSDKObjC