gpt4 book ai didi

objective-c - 选择和 FTP 传输相机胶卷图像

转载 作者:搜寻专家 更新时间:2023-10-30 20:21:38 25 4
gpt4 key购买 nike

这是我正在尝试实现的快速流程:

  1. 用户选择现有的相册图片或视频。
  2. 该应用将所选图像通过 FTP 传输到远程 FTP 服务器。

非常直接,或者看起来是这样!

到目前为止,我可以获得 UIImagePickerController 以允许用户从相机胶卷中选择图像,并且可以获得图像的 NSURL:

NSURL *assetURL = [info objectForKey:UIImagePickerControllerReferenceURL];

这会返回如下内容:

assets-library://asset/asset.JPG?id=ACE09510-60D8-41EF-BC26-0A0A4D57B21C&ext=JPG

现在,跳到第 2 部分,我可以使用 CFNetwork 框架成功地将文件通过 FTP 传输到远程服务器。

此处缺少的链接似乎是将 Assets 库格式的 NSURL (*assetURL) 转换为 NSFileManager 使用的标准文件格式 URL。

如果我使用指向应用程序包中已有的 .jpg 的硬编码文件 URL,我可以成功地通过 FTP 将其输出。但是,如果我使用 Assets 库格式的 URL,我会在另一端得到零字节。

我的问题是如何将 Assets 库 URL 转换为常规文件 URL?我看过有关如何将相机胶卷图像复制到我的文档目录的示例。然后我想我可以使用该文件 URL 来发送图像。但是,如果我打算发送视频,将一个巨大的文件复制到 Documents 目录只是为了将其通过 FTP 传输出来并不是很明智。

我确实意识到 FTP 不是首选的协议(protocol),而且漏洞百出。然而,它是一个现有的 FTP 服务器,支付给我的权力告诉我“应该如何使用它”。

我显然遗漏了一两个关于如何实现它的概念。非常感谢任何能为我指明正确方向的人。

最佳答案

不幸的是,您无法在 iOS 中获得对 Assets 目录的文件级访问权限(这解释了为什么您不能引用照片文件本身),但您仍然可以使用 ALAssetLibrary 来执行您需要的操作来创建来自存储在 URL 中的数据的图像。查看 this question, 的答案它显示了如何使用 ALAssetRepresentation 对象创建 UIImage。使用此技术,您应该能够获得发送到 FTP 服务器所需的图像数据。

关于objective-c - 选择和 FTP 传输相机胶卷图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9391163/

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