将文件保存在应用文件夹中
Posted
技术标签:
【中文标题】将文件保存在应用文件夹中【英文标题】:Save files inside app folder 【发布时间】:2017-06-17 11:55:16 【问题描述】:当应用程序保存照片时,它会显示在照片应用程序中。但我想将照片保存在应用文件夹中,其他应用无法访问它。
我得到的文件保存路径如下:
let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
我该怎么做?
有人告诉我使用安全存储。它可以成为我的解决方案吗?
【问题讨论】:
【参考方案1】:将图像保存到 App 文件夹,如下所示:
func saveImageDocumentDirectory(image: UIImage, name:String)
let paths = (NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString).appendingPathComponent(name)
let imageData = UIImageJPEGRepresentation(image, 0.5)
FileManager.default.createFile(atPath: paths as String, contents: imageData, attributes: nil)
没有理由使用安全存储(除非您还想保护数据免受黑客攻击等),因为 App 文档文件夹只能由您的 App 访问。
另外,看看这个博客: https://iosdevcenters.blogspot.com/2016/04/save-and-get-image-from-document.html
【讨论】:
它似乎和我一样使用了文档目录。但我希望以只有我的应用可以访问它们的方式保存文件。 好吧,正如链接和帖子中所提到的,这就是文档文件夹的工作方式......它不是共享文件夹。该应用程序在沙盒环境中运行,其他应用程序无法访问其文件夹。 感谢托马斯和塞巴斯蒂安。但是托马斯,你能解释一下吗?我的路径和你提到的有什么不同吗?我找不到区别。请注意,照片应用显示的是我的图片,而不是其他应用。 我看不到显示的代码如何使照片应用程序可以使用图像。要保存到相册,您可以执行以下操作: UIImageWriteToSavedPhotosAlbum以上是关于将文件保存在应用文件夹中的主要内容,如果未能解决你的问题,请参考以下文章
如何通过应用程序将 PDF 文件保存在 iPhone 设备中
如何将文件从 iOS 反应原生应用程序保存到 Files 文件夹