使用UIRequiredDeviceCapabilities Corona SDK将应用程序提交到App Store时出错

时间:2013-04-24 04:53:16

标签: iphone ios app-store corona build-settings

我从未更改过我的构建设置,几周前我将应用程序提交到了应用商店,没有任何问题。

我今天尝试提交更新,但我收到了错误

此捆绑包无效。 Info.plist的UIRequiredDeviceCapabilities键中提供了未知的设备功能值。确保UIRequiredDeviceCapabilities的值是一个数组或二进制,包含有效值,如信息属性列表键参考中所述。

以下是我的构建设置的片段。如果我注释掉麦克风线,那么一切正常。

iphone = {
    plist = {
        CFBundleVersion = "20130423",
        CFBundleShortVersionString = "3.1.1",
        CFBundleDisplayName = "App Name",
        CFBundleIdentifier = "com.example.mypackagename",
        UIRequiredDeviceCapabilities = "microphone",   -- <<---- this line is the problem
        UIStatusBarHidden = true,
        UIPrerenderedIcon = false, -- set to false for "shine" overlay
        --UIApplicationExitsOnSuspend = true, -- uncomment to quit app on suspend
        CFBundleIconFile = "Icon.png",
        CFBundleIconFiles = {
           "Icon.png",
           "Icon@2x.png",
           "Icon-72.png"
         }
    }
},

2 个答案:

答案 0 :(得分:2)

只需改变:

UIRequiredDeviceCapabilities = "microphone"

为:

UIRequiredDeviceCapabilities = {"microphone"}

注意:

UIRequiredDeviceCapabilities预计它的值为arraydictionary。您将其作为string传递,这就是问题发生的原因。


参考:

  

<强> UIRequiredDeviceCapabilities

     

UIRequiredDeviceCapabilities(数组或字典 - iOS)让iTunes   并且App Store知道应用程序需要哪些与设备相关的功能   为了奔跑。 iTunes和移动App Store使用此列表   阻止客户在没有安装应用的设备上安装应用   支持列出的功能。

     

如果使用数组,则给定键的存在表示   相应的功能是必需的。如果你使用字典,你必须   为每个键指定一个布尔值。如果此键的值是   是的,该功能是必需的。如果键的值为false,则为   功能不得出现在设备上。在这两种情况下,省略一个   key表示该功能不是必需的,但应用程序是   如果该功能存在,则能够运行。

查看InfoPlistKeyReference了解详情。

答案 1 :(得分:0)

使用此格式

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>microphone</string>
</array>