gpt4 book ai didi

ios - UIImagePicker 自动将照片库中选中的图片保存到 tmp 文件夹中

转载 作者:可可西里 更新时间:2023-11-01 06:13:05 24 4
gpt4 key购买 nike

我开发了一个应用程序来进行安全问卷调查。该应用程序允许为单个问题添加照片。为此,我使用了 UIImagePickerController。自 iOS 11 以来,我注意到,无论是在模拟器还是 iPad 中,从照片库中选择图像都会自动将所选图像保存在应用程序的 tmp 文件夹中,名称为“临时”(例如 57576A97-21D4-465F- 91B6-11215F8B5F97.jpeg)。这甚至发生在执行 didFinishPickingMediaWithIn 之前。

这是我设置 UIImagePickerController 的代码:

let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = .photoLibrary;
imagePicker.allowsEditing = false
self.present(imagePicker, animated: true, completion: nil)

此图像在应用程序的使用过程中不会被删除。如果用户添加了大量照片,这意味着所有这些照片都将存储在 tmp 目录中,这最终可能会导致崩溃。

目前,我已经解决了搜索“临时”文件并每次删除它们的问题。

我已经检查过 iOS 10.1 模拟器,但是在临时目录中没有创建所选图像的副本(使用相同的代码)。在 iPad 上测试时,使用相机不会导致所选图像的“临时”副本

我的问题是:UIImagePicker 是 iOS 11 中的标准行为来保存临时文件,还是可以避免?

最佳答案

我以前遇到过同样的问题...我认为没有办法避免保存图像的位置。我以前遇到过这个问题,我们也自己管理了图像的删除,这是在 iOS 11 之前。

您可以使用图像选择器中的 PHAsset 来访问照片库中的图像,这样图像就不会保存在临时位置吗?

更新

在我的个人项目中,我也遇到过这个问题,我找到了一个简单的解决方案。我从我的应用程序的文档目录中的临时目录中移动图像,进行一些编辑,然后将其发送到服务器。使用 moveItem(at srcURL: URL, to dstURL: URL) throws file 函数意味着文件没有被复制,我只需要管理文件在我的文档目录而不是临时目录中的持久性另外。

关于ios - UIImagePicker 自动将照片库中选中的图片保存到 tmp 文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46766658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com