App Store Connect指出,在ReplayKit广播上传扩展中缺少RPBroadcastProcessMode,但归档文件和IPA都包含了它

移动开发 2026-07-10

我正在尝试上传一个iOS应用,它现在包含一个 ReplayKit 广播上传扩展。

这个应用之前就有另一个扩展 (WidgetKit),我已经通过App Store Connect成功上传并分发了多次先前的构建。只有在我添加ReplayKit Broadcast Upload扩展之后,上传问题才开始出现。

App Store Connect的验证在上传过程中现在失败,错误信息显示广播扩展缺少 RPBroadcastProcessMode,尽管该键在归档应用和导出的IPA中都存在。

验证错误指出广播扩展中 RPBroadcastProcessMode 的值无效,且未指定该键。它期望为 RPBroadcastProcessModeSampleBufferRPBroadcastProcessModeMP4Clip

在我的扩展plist中,该扩展被配置为广播上传扩展,具体如下:

  • NSExtensionPointIdentifier = com.apple.broadcast-services-upload
  • NSExtensionAttributes.RPBroadcastProcessMode = RPBroadcastProcessModeSampleBuffer
  • 将principal class设置为扩展的示例处理程序

归档后,我手动检查了两个文件:

  • 构建的 .xcarchive
  • 导出的 .ipa

使用plutil,二者都显示 RPBroadcastProcessModeSampleBuffer under NSExtension \> NSExtensionAttributes

我也用codesign检查了扩展签名,扩展包看起来签名正常。

我已经验证过的事项:

  • Release构建成功
  • 归档成功
  • 归档包含 RPBroadcastProcessModeSampleBuffer
  • 导出的IPA包含 RPBroadcastProcessModeSampleBuffer
  • 同样的失败在Xcode Organizer和 altool都会出现
  • 在添加此ReplayKit扩展之前,同一应用的先前构建曾成功上传

我之前也遇到一个单独的Xcode问题,扩展的Info.plist不小心被放到了Copy Bundle Resources,导致重复输出错误。我已经修复,现在归档可以干净地构建。然而,上传验证错误仍然存在。

我的问题是:还可能有哪些原因导致App Store Connect报告RPBroadcastProcessMode缺失,即使构建出的归档和导出的IPA都明确包含该键?

是否存在某些ReplayKit特定的要求、plist结构问题,或App Store Connect验证的怪癖,可能让Apple的验证器忽略它?

解决方案

经过两天的努力,我找到了错误:该键必须是 NSExtension 字典的直接子项(不能在顶层,也不能在 NSExtensionAttributes 内)。

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

相关文章