我正在将媒体数据保存到iPhones tmp目录中,在不再需要它之后我删除了所有文件。但是我注意到在我的手机设置菜单中,在存储下我的应用程序内存每次保存新文件后都会增加,然后再将其删除。我很确定文件是被删除的,因为如果我再次尝试删除同一个文件,它会抛出一个它不存在的异常。这是我删除tmp中所有内容的代码:
let content = try FileManager.default.contentsOfDirectory(atPath: NSTemporaryDirectory())
for path in content {
let fullPath = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(path)
try FileManager.default.removeItem(atPath: fullPath.absoluteString)
}
奇怪的是,有时在不使用应用程序并返回内存后,关键字有时会出现故障。我做错了什么和/或我还能做些什么来最小化我的应用程序在tmp文件夹方面的内存占用量?
答案 0 :(得分:1)
事实证明,传递NSURL vs string是解决方案,现在文件肯定被删除了:
for path in content2 {
let filePath = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(path)
try FileManager.default.removeItem(at: filePath!)
}