Add a Log Files entry to the Usage sizes. (#4921)

This commit is contained in:
Doug
2026-01-06 21:39:39 +00:00
committed by GitHub
parent 6117ee3a2b
commit afe6ce2bbd
2 changed files with 16 additions and 0 deletions

View File

@@ -59,6 +59,19 @@ extension FileManager {
return size
}
func sizeForDirectory(at url: URL) throws -> UInt {
guard let enumerator = enumerator(at: url, includingPropertiesForKeys: [.fileSizeKey, .isDirectoryKey]) else {
throw FileManagerError.invalidFileSize
}
return try enumerator
.compactMap {
guard let fileURL = $0 as? URL else { return nil }
return try UInt(fileURL.resourceValues(forKeys: [.fileSizeKey]).fileSize ?? 0)
}
.reduce(0, +)
}
func numberOfItems(at url: URL) throws -> Int {
try contentsOfDirectory(at: url, includingPropertiesForKeys: nil).count

View File

@@ -40,6 +40,9 @@ class DeveloperOptionsScreenViewModel: DeveloperOptionsScreenViewModelType, Deve
if let mediaStore = sizes.mediaStore {
components.append(.init(name: "MediaStore", size: formatter.format(Int64(mediaStore))))
}
if let logsSize = try? FileManager.default.sizeForDirectory(at: .appGroupLogsDirectory) {
components.append(.init(name: "Log Files", size: formatter.format(Int64(logsSize))))
}
state.storeSizes = components
}