当我尝试验证我试图提交到应用商店的(仅限 iPad)应用时,我收到了三个错误:
1. iPad:应用程序可执行文件缺少所需的架构。必须至少存在以下架构之一:armv7。
实际上,我的所有架构设置中都有 armv7 和 armv7s,是的,我确实将“仅构建活动架构”设置为“否”。
为我解决的问题是从这个列表中手动删除 armv7s,只留下armv7。 只有这样,这个错误才消失。
“至少其中一种架构必须是 armv7”
2. 应用程序未通过协同设计验证。签名无效,包含不允许的权利,或者未使用 iPhone 分发证书签名。
嗯?以前,我一直在使用企业许可证构建这个 iPad 应用程序,以便在我们公司内进行 Ad-Hoc 分发。现在,我正在尝试使用开发人员许可证来构建它,这样我就可以将它部署到 App Store。
为了解决这个问题,我需要:
3. 无法从应用程序中提取权利:(null)
咦?!
还记得应用程序刚刚命名的美好时光吗?使用 XCode,您的应用程序具有包名称、产品名称、可执行文件名称和包显示名称。
一些 StackOverflow 用户已经注意到了这一点,并指出了苹果文档的方向,以解释这些差异......但祝你好运。
对我来说,要解决这个问题,我只需要确保 Executable Name 和 Bundle Name(在* -Info.plist 文件中)相同,并且还与 Product Name 匹配。
令人沮丧的是,产品名称隐藏在上面第 2 部分中提到的选项卡下,即选择“构建设置”选项卡,然后在标题栏中选择“基本”和“组合”。
我希望这对其他开发人员有用。这一切都是使用 XCode 4.6.3 完成的,所以当 iOS 7 和 XCode 5 出现时,下个月肯定会过时。届时,您的应用可能还需要昵称和中间名。谁知道?
麦克风
www.MikesKnowledgeBase.com