删除ios后,tmp目录中的文件仍占用空间

时间:2017-06-16 23:38:16

标签: ios swift memory tmp

我正在将媒体数据保存到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文件夹方面的内存占用量?

1 个答案:

答案 0 :(得分:1)

事实证明,传递NSURL vs string是解决方案,现在文件肯定被删除了:

for path in content2 {
    let filePath = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(path)
    try FileManager.default.removeItem(at: filePath!)
}