簡體   English   中英

計算的應用程序大小在iOS中顯示不正確

[英]calculated app size not showing correct in iOS

我的應用程序會定期將某些內容轉儲到文檔文件夾中。 而且我使用下面的代碼來計算我的總應用程序消耗的內存大小。 但是我看到它與我從設置\\用法中看到的有所不同。 我的代碼顯示了很少的內存。 我無法跟蹤我在計算中出錯的地方/或者錯過了文件夾路徑。

我已計算出我的應用大小,如下所示:

NSString *folderPath = [[NSBundle mainBundle] bundlePath];
NSArray *filesArray = [[NSFileManager defaultManager]      subpathsOfDirectoryAtPath:folderPath error:nil];
NSEnumerator *filesEnumerator = [filesArray objectEnumerator];
NSString *fileName;
unsigned long long int fileSize = 0;

while (fileName = [filesEnumerator nextObject]) {
NSDictionary *fileDictionary = [[NSFileManager defaultManager] attributesOfItemAtPath: [folderPath stringByAppendingPathComponent:fileName] error:nil];
fileSize += [fileDictionary fileSize];
};

上面的代碼返回實際的文件大小 設置/使用中顯示的值顯示分配的大小 分配的大小應大於實際大小。

這就是為什么您的計算值與設置/使用值不匹配的原因。

如果需要訪問文件的分配大小,請使用NSURL類中的NSURLTotalFileAllocatedSizeKey。 [據我所知] NSFileManager類中沒有可用的方法/屬性來獲取分配的大小

請詳細介紹NSURL類的文件屬性鍵

僅供參考:如果您嘗試訪問已裝箱應用的主目錄中的/ Library / Caches / Snapshot文件夾,我們將獲得權限錯誤。

這可能對您有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM