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

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

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

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

【问题讨论】:

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

标签: iphone ios5 app-store-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 你怎么看这个? stackoverflow.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

        【讨论】:

        • 链接往往会发生变化或丢失,您能否解释一些内容或在此处引用它?
        猜你喜欢
        • 2019-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多