2014-09-30 32 views
15

我试图提交存档的应用程序商店与旧的应用程序我得到。我不断收到两个错误CFBundleShortVersionString键必须在plist和更麻烦的'包不包含plist'iOS应用提交 - 压缩文件不包含一个Info.plist

这两个项目都存在于应用程序中。我向plist添加了CFBundleShortVersionString密钥,并且plist文件绝对存在或者我永远不会构建它。这里有什么问题?

+0

在您的 “生成设置”? – 2014-09-30 23:51:21

+0

@ aus10c plist文件的名称和几个其他设置。我在找什么? – JMD 2014-10-01 00:03:21

+0

我正要说ev0lution“包装”下写了:) – 2014-10-01 00:04:08

回答

2

如果上传工具没有找到您的.plist文件,这将是它为什么不认为它包含了CFBundleShortVersionString关键。出于某种原因,应用程序可以在没有任何plist文件的情况下编译!

首先,请确保您的plist文件在您的项目导航存在,它没有以红色突出显示。 (如果它已被删除或重命名光盘上,无论何种原因)

在Xcode中的项目,选择您的应用程序的目标,然后选择“生成设置”选项卡。搜索“plist”来过滤结果。在“打包”下,检查“Info.plist”的值。这应该是您的plist文件的名称,相对于您的Xcode项目。例如,“MyApp/MyApp-Info.plist”。如果它为空,请将其更改为plist文件的名称并重建。

+0

值同样的事情是“APPNAME-plist中”。没有路径。然而,plist位于项目的一些子目录中。这个路径是“MyApp/MyApp-Info.plist。所以我会添加第一部分,看它是否工作。 – JMD 2014-09-30 23:56:22

+0

@JMD如果它位于子目录(实际目录,不只是Xcode组),那么我相信它们应该加到前缀我不太清楚Xcode目前的功能,但它用于在AppName文件夹中创建plist文件,该文件包含在Info.plist设置中。我已经测试过了,没有文件夹名称,找不到plist文件 – ttarik 2014-09-30 23:58:53

+0

我以为它在一个子目录中,但它实际上只是一个xcode组。 – JMD 2014-10-01 00:00:37

0

我有相同的问题,相同的两个错误消息。 Info.plist实际上在包中,但它不包含CFBundleShortVersionString。第一个错误(存档不包含Info.plist)由Apple系统错误地给出。

在我来说,我曾在项目中的多个目标,我已经添加了CFBundleShortVersionString到错误的目标(而不是一个我一直在与苹果验证)。

要额外肯定,做

  • 出口档案问题的特设分布
  • 解压* .ipa文件
  • 检查有效载荷/ your.app/Info.plist中文件
  • 检查是否含有CFBundleShortVersionString
4

我有同样的问题。

我刚刚向Info.plist添加了一个新行,其密钥为Bundle versions string, short,其版本为一个值,然后通过验证,没有更多错误。

1

我已经“捆绑版本字符串,短”在我的Info.plist但对我来说,问题是“捆绑显示名称”不是info.plist中,所以我补充说,和它的作品。

希望这会帮助你。

感谢

0

对我来说,我已经重复一个目标而回,并构建设置中引用不存在的二进制“对myApp复制”

3

在我来说,我在一个错误/错误的条目可执行文件名的info.plist,我用$ {EXECUTABLE_NAME}替换了它,并且清除了问题。

+0

今天面对这个 – Sandeep 2016-01-25 05:44:02

0

我设法从上传得到有意义的错误:

  1. 安装https://github.com/nomad/shenzhen
  2. 创建IPA:IPA建立
  3. 提交IPA:IPA分发:itunesconnect -e -w -a ACCOUNT_NAME -p密码 - ˚F./AppName.ipa -i APPLE_ID_OF_THE_APP --verbose

通过这样做,我收到以下错误: ERROR ITMS-90183:“无效的捆绑操作系统类型代码。值“捆绑操作系统类型代码” [CFBundlePackageType]在你的应用程序包的Info.plist文件必须是[APPL]之一。”

新增CFBundlePackageType和我的应用程序通过验证!

我觉得这种方式你可以在提交更有意义的消息时找到其他问题(如果有的话)

0

你不需要编辑你的plist文件,只需设置内部版本号(在版本号的目标 - 常规下),这将传播到plist文件为捆绑版本

这对我来说太,我删除了版本号,结果是你的错误。当我插入1时,问题就解决了。

0

确保Target Membership(在文件检查器)的Info.plist中显示项目中选择。在我的情况下不是。选中复选框解决了这两个问题。

1

当你有应用扩展嵌入到你的应用程序,你必须检查(启用)MainApp-Info.plist中的目标成员对那些应用扩展以及主要的应用程序。在Xcode文件检查器中执行。

相关问题