无法将应用程序二进制文件上传到 App Store [英] Can't upload application binary to the App Store

查看:31
本文介绍了无法将应用程序二进制文件上传到 App Store的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们终于可以将我们的第一个 iPhone 应用程序提交到应用程序商店(或尝试提交),但我似乎无法让 iTunes Connect 接受上传.

We've finally gotten to the point of submitting our first iPhone app to the app store (or trying to), but I can't seem to get iTunes Connect to accept the upload.

我已经尝试通过网站(您上传的二进制文件无效.签名无效,或者它没有使用 Apple 提交证书签名.")和应用程序加载器(Info.plist 没有包含一个 CFBundleResourceSpecification").

I've attempted through both the web site ("The binary you uploaded was invalid. The signature was invalid, or it was not signed with an Apple submission certificate.") and the Application Loader ("Info.plist does not contain a CFBundleResourceSpecification").

经过大量阅读(包括此类问题),重新阅读,和谷歌搜索,我可以说:

After lots of reading (including questions like these), re-reading, and googling, I can say that:

  • 我确定捆绑标识符与 AppID 匹配.
  • 有一个 Icon.png,它是一个 57x57 像素的 PNG 文件,这就是 Info.plist 中的确切名称.
  • 我在做一个设备,而不是模拟器,构建.
  • 签名过程成功:构建结果显示这一点,运行 codesign -vvvv MyApp.app 表示没有问题.
  • ZIP 文件的路径中没有奇怪的字符.
  • 我已经删除了 build 文件夹并重新构建了很多次二进制文件.

现在,在构建的应用程序中,Info.plist 确实不包含 CFBundleResourceSpecification 键,但我完全不清楚该值应该来自哪里,或者还有什么我需要添加才能完成这项工作.(我可以使用 Apple 搜索找到的唯一参考是一些 代码签名发布注释...但是,正如我上面提到的,代码签名步骤是成功的,据我所知.)

Now, it is true that in the built app, the Info.plist does not contain a CFBundleResourceSpecification key, but it's not at all clear to me where that value should come from, or what else I need to add to make this work. (The only reference I can find using Apple's search is some code signing release notes... but, as I mentioned above, the code signing step is succeeding, as far as I can tell.)

有没有人遇到过我没有提到的对这个问题的任何解释?

Has anyone run across any explanations for this problem that I haven't mentioned already?

这是构建的代码签名步骤的(稍微编辑)输出,FWIW:

Here's the (slightly redacted) output from the code signing step of the build, FWIW:

代码签名截图 http://img70.yfrog.com/img70/8988/codesign.png

推荐答案

问题似乎是我使用了 json-framework 在我的应用程序中,并根据 维基中的说明.我的猜测是 XCode 被 >1 SDK 的存在弄糊涂了,因此无法像预期的那样找到默认的 ResourceRules.plist.

The problem seems to have been that I was using json-framework in my app, and including it as an additional SDK per the instructions in the wiki. My guess is that XCode got confused by the presence of >1 SDK, and thus couldn't find the default ResourceRules.plist like it's supposed to.

我找到了两个解决方案(好吧,无论如何都是变通办法):

I found two solutions (well, workarounds, anyway):

  1. 使用代码签名资源规则路径"构建设置(默认情况下为空白)指定 XCode 应使用的文件路径:$(SDKROOT)/ResourceRules.plist.这行得通,而且似乎相当无害,但令人沮丧的是 XCode 应该能够自己解决这个问题.(我在一个非常老的问题中找到了这个解决方案在 json-framework 上提交.)
  2. 不要使用 SDK 方法.相反,只需将文件直接包含到项目中,并使用本地路径更新 #import 语句.这是我最终采用的方法,因为我们做出了一个总体决定,将所有外部依赖项合并到项目本身中(以便其他开发人员在他们的机器上进行更少的配置以启动和运行).
  1. Use the "Code Signing Resource Rules Path" build setting (which is blank by default) to specify the path to the file XCode should use: $(SDKROOT)/ResourceRules.plist. This works, and seems reasonably harmless, but is frustrating in the sense that XCode should be able to figure this out on its own. (I found this solution in a very old issue filed on json-framework.)
  2. Don't use the SDK approach. Instead, just include the files directly into the project, and update the #import statements with local paths. This is the approach I ended up taking, since we made a general decision to fold all of the external dependencies into the project itself (so that other developers have less configuration to do on their machines to get up and running).

我不确定这是 XCode 中的错误,还是 json-framework 有问题,但我已经 针对后者提出了问题以防万一.

I'm not sure whether this is a bug in XCode, or something wrong with json-framework but I've filed an issue on the latter just in case.

更新,2010 年 6 月 30 日:我提交的问题已关闭,Brautaset 先生计划在项目的下一个版本 (2.3) 中移除对 SDK 选项的支持.此外,代码现在位于 GitHub 上,尽管 Google 代码页面目前仍然存在.

UPDATE, 30 June 2010: the issue I filed has been closed, and Mr. Brautaset plans to remove support for the SDK option in the next release (2.3) of the project. Also, the code now lives on GitHub, though the Google Code pages still exist for now.

这篇关于无法将应用程序二进制文件上传到 App Store的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆