错误“应用内购买存档...无效。包中包含'Contents / xyz.m4a'中的可执行文件”

时间:2012-12-13 04:01:03

标签: iphone ios6 in-app-purchase itunesconnect xcode4.5

我正在使用iOS 6和Xcode 4.5.2为几个游戏关卡创建一个.pkg文件。在为IAP内容验证Xcode .pkg时,它抱怨我在声音包中有m4a音频文件。奇怪的是它说:“应用内购买的存档...无效。该软件包在'Contents / xyz.m4a'中包含一个可执行文件。” 我知道我在包中有一些音频文件(扩展名为.m4a),但我不明白为什么它将那些称为“可执行文件”。

3 个答案:

答案 0 :(得分:21)

尝试ls -l xyz.m4achmod -x xyz.m4a

答案 1 :(得分:5)

同样的问题,但截至2013年10月28日列出的答案并未解决我的错误。我能够通过生成的存档中的chmod 444解决错误,然后重新提交以进行验证。然后它通过了验证。

其他信息: 我有一堆.mov视频,我想在ItunesConnect上作为托管内容上传。在Xcode中:File-> NewProject-> Other-> HostedContent;确保产品标识符与iTunesConnect中的标识符匹配(区分大小写),(不要添加到任何项目或工作区),然后将文件保存到项目目录外。然后,在新创建的项目中,在第一个文件夹中(具有我的应用程序内购买的名称 - 但不在Supporting Files文件夹中),我移动了所有.mov视频文件,选择“将文件复制到文件夹”选项。
* 注意 - 此步骤适用其他人在此帖子中发布的答案,但对我不起作用。 接下来,在终端中,我导航到这些视频被复制的位置。然后我将所有视频更改为仅使用此命令读取:chmod 444 ./

返回Xcode,从菜单中:Product-> Archive。组织者打开,列出新的存档。选择验证并选择ITunesConnect“应用内购买内容”。这是验证失败的地方,错误“应用程序内购买的存档无效。该软件包包含'xxxxxxx'.mov处的可执行文件”

然后我右键单击存档包,然后“在Finder中显示”。右键单击“xxxxxxx.xcarchve”文件并选择“显示包内容”。然后进入这个文件夹:products-> Library-> InAppPurchaseContent-> xxxx-nameofmycontent-xxxx->内容

存档包含我所有视频文件的副本。现在我导航到终端中的“Contents”文件夹(在终端中,键入“cd”,然后将文件夹拖到终端以自动填充目录路径),然后按Enter键。在这个目录中,我使用以下命令将所有视频文件设置为“只读”:“chmod 444 ./*”。

返回组织者,点击验证,选择由ITunesConnect标识的托管内容产品和验证成功!

希望在我的情况下这有助于其他人。

答案 2 :(得分:4)

检查包装内容。很可能你有你的构建设置,这样你就没有vaild音频文件,而是编译代码。您无法在IAP包中编译代码。