用于快捷指令动作的视频输入

移动开发 2026-07-11

我正在为快捷指令开发一个AppIntent / 动作,它接受来自Photos动作的视频输入(例如 "Select Photos")。

我所读到的一切都说 "IntentFile" 是唯一合适的数据类型,我此前也已经成功地用它来从同一个动作接收照片输入。

然而,在这个用例中,我观察到的情况如下:

魔术变量数据类型 Swift变量数据类型 结果
"Photo media" (默认) 或 "File" "IntentFile" 输入被拒绝——动作会重新提示输入,且魔术变量以红色高亮显示。
"Photo media" (默认) 或 "File" "[IntentFile]" 输入被接受但为空——".count" 的值为0。

我也尝试添加中间步骤 "Save File",但没有改变行为。

我甚至尝试将视频编码为Base64,并作为字符串传入,但该操作似乎有最大数据大小限制。

令人震惊的是,我在网上找不到关于这个用例的任何信息,我几乎已经把Codex用尽,因此发了这篇帖子。

解决方案

看来这是iOS的一个bug,因为做完全相同的操作,但传入苹果自家的 "Save File" 动作时也会有同样的问题。

我发现的一个变通方法是在中间使用 "Encode Media"。但请注意,这会丢失元数据(例如日期时间和位置信息)。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章