无法上传由 ios5 构建的应用程序 - 与 UIRequiredDeviceCapabilities 问题有关

Posted

技术标签:

【中文标题】无法上传由 ios5 构建的应用程序 - 与 UIRequiredDeviceCapabilities 问题有关【英文标题】:faild to upload app which build by ios5 - relate to UIRequiredDeviceCapabilities issue 【发布时间】:2011-11-11 02:07:43 【问题描述】:

我遇到一个问题,我像以前一样使用ios 5构建分发版应用程序, 当我将二进制应用程序上传到 iTunes 时,它报告错误如下:

“此捆绑包无效,info.plist 中的键 UIRequiredDeviceCapabilities 可能不包含会阻止此应用程序在…上运行的值”

我也在搜索此类问题,我得到答案说我必须从 iTunes 中删除旧版本应用程序(这将丢弃旧应用程序用户和评级)并将新应用程序上传到 iTunes ......这种方式看起来是不好的解决方案,我想要保留旧的应用程序用户……任何人都可以为此提供帮助吗?非常感谢

【问题讨论】:

您的错误消息中的语法错误表明您没有从 iTunes Connect 正确转录它...拥有完整的错误消息而不是只给出一半以 . ..当您在问题中提及“iTunes”时,我认为您指的是 iTunes Connect? 【参考方案1】:

我遇到了同样的问题,我将我的 plist 文件与运行良好的旧版本进行了比较,并且所需的设备功能行甚至不存在。删除这些值,使该行不存在并且应该处理它。

【讨论】:

【参考方案2】:

是的,删除必需的设备功能行就可以了!

【讨论】:

工作就像一个魅力!【参考方案3】:

我在 Xcode 4.2 之前创建的几个项目中看到了这个问题,然后使用 Xcode 4.2 将二进制文件提交到应用商店。

您需要进入 info-plist 并添加“所需设备功能”键。该键是一个数组,需要两个字符串项:“armv6”和“armv7”。

plist 源代码如下所示:

<key>UIRequiredDeviceCapabilities</key>
 <array>
  <string>armv6</string>
  <string>armv7</string>
</array>

【讨论】:

谢谢回复,我觉得应该是字典值,key:armv6和armv7,value是YES, 也将标准架构改为armv6,armv7 我更新了我的答案以包含一个示例。 Required Device Capabilities 是一个数组,需要添加两个字符串项。 嗨....在解决了这个问题之后,我删除了 armv6、armv7 这两个选项,然后一切正常,谢谢。 @kcharwood 你怎么看这个? ***.com/questions/31973890/…【参考方案4】:

我们尝试了上面列出的解决方案,并将 armv6 和 armv7 添加到我们的 info.plist 文件中。但是,当 plist 文件同时包含用于 UIRequiredDeviceCapabilities 的 armv6 和 armv7 时,App Store 拒绝了我们的应用程序的上传,因为要求 armv7 会阻止应用程序在 armv6 设备上运行。上传错误是:

“此捆绑包无效。Info.plist 中的键 UIRequiredDeviceCababilities 可能不包含会阻止此应用程序在以前版本支持的设备上运行的值。

因此,要使用 xcode 4.2 将 armv6 添加到我们的应用程序中,我们必须做两件事:

1) 在 info.plist 文件的 UIRequiredDeviceCapabilities 中只设置 armv6, 2)将armv6和armv7设置为项目文件中的Architecture设置

【讨论】:

【参考方案5】:

原因是在 info plist 中添加/更新 REQUIREDDEVICECAPABILITIES。

当我尝试使用 XCODE 4.2 为使用 XCODE 3.2 提交的应用程序提交更新时,我遇到了这个问题,而没有在 info plist 中添加 REQUIREDDEVICECAPABILITIES。

我尝试更改架构,添加/删除 REQUIREDDEVICECAPABILITIES 等。

Atlast 将部署目标更改为 4.3,并且成功了。

更清楚地说,低于 4.3 的部署目标需要 armv6/armv7 架构,而 XCODE 3.2 不需要,因为 XCODE 4.3 要求用户提及。

【讨论】:

【参考方案6】:

如果要针对所有 iOS 设备,您只需删除键 UIRequiredDeviceCapabilities。

在develope.apple 关注此链接 https://developer.apple.com/library/ios/qa/qa1623/_index.html

【讨论】:

链接往往会发生变化或丢失,您能否解释一些内容或在此处引用它?

以上是关于无法上传由 ios5 构建的应用程序 - 与 UIRequiredDeviceCapabilities 问题有关的主要内容,如果未能解决你的问题,请参考以下文章

iOS UI 外观错误

无法上传新的构建文件 XCode 6.3.2

Objective C / IOS5 - 根视图 - 从空应用程序模板构建 (XCODE)

为 iOS4.3 和 iOS5.0 构建的问题

PyQt5 - 将逻辑与 ui 分离导致功能无法正常工作

在 iOS5/phonegap 上上传图片。字节数组/数据 URI 可能吗?