与 gmail 应用程序共享文件 - 没有附加文件

Sharing file with the gmail app - no file attached

我想通过 iPhone 上的 Gmail 客户端应用程序共享一个文件 (gpx)。 问题是创建的邮件不包含 "shared" .gpx 文件。

创建共享请求的代码:

 let itemProver = GPXItemProvider(itemInformation) // Subclass of UIActivityItemProvider
 let shareController = UIActivityViewController(activityItems:[itemProver], applicationActivities: nil)
 present(controller: shareController)

代码本身仍然有效,因为如果我尝试将 gpx 文件导出到设备上的默认邮件客户端,一切正常。

我是否遗漏了需要 GMail 应用程序包含文件作为附件的内容?

本主题涵盖了类似的问题。虽然那里使用了第三方库,但在我的情况下这不是一个选项: Send an iphone attachment through email programmatically

谢谢。

您可以将 GPX 文件写入临时目录并共享 URL 而不是您的自定义项。

let data = ...
let url = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("test.gpx")
try data.write(to: url)
let shareController = UIActivityViewController(activityItems:[url], applicationActivities: nil)