繁体   English   中英

'my_app.app/ResearchKit/ResearchKit/Info.plist'中的包不包含可执行包

[英]The bundle at 'my_app.app/ResearchKit/ResearchKit/Info.plist' does not contain a bundle executable

更新 XCode版本:8.2 iOS目标:9

希望有些人可以向我指出这不是一个错误。 很简单,我提取了最新的稳定版本的researckKit,然后将.xcodeproj文件放入我的新iOS项目中,添加了嵌入式二进制文件。 我创建了几个在模拟器中看起来很好的步骤。 我的应用程序构建正常,甚至存档验证确定。 上传到应用程序商店很好,但后来我收到来自应用程序商店的电子邮件,其中6个条目看起来大致相同,对于ReserachKit框架内的6个不同的Info.plist文件:

意外的CFBundleExecutable键 - 'my_app.app/ResearchKit/ResearchKit/Info.plist'中的包不包含包可执行文件。 如果此捆绑包故意不包含可执行文件,请考虑从其Info.plist中删除CFBundleExecutable密钥并使用BNDL的CFBundlePackageType。 如果此捆绑包是第三方框架的一部分,请考虑与框架的开发人员联系以获取更新以解决此问题。

在Stack Overflow上找到了不少答案 ,很多人同意做错误信息中建议的事情:只需从.plist文件中删除CFBundleExecutable Key。 我试过了,但我的存档甚至不会验证以下错误:

iTunes Store操作失败。 无效的包结构 - 不允许使用二进制文件“my_app.app/Frameworks/ResearchKit.framework/ResearchKit”。 除了受支持的捆绑包的CFBundleExecutable之外,您的应用程序不能包含独立的可执行文件或库。 有关iOS应用程序包结构的信息,请参阅https://developer.apple.com/go/?id=bundle-structure上的“捆绑编程指南”。

**更新**

当然,我从github为这个项目提取了一个新版本的ResearchKit框架。 所以我只是尝试了另一个Xcode项目的ResearchKit版本的副本,我最近已成功部署在应用程序商店中,我认为如果它适用于该应用程序它应该通过这个应用程序。 但是,唉,我从App Store收到了关于意外的CFBundleExecutable Key的同样的电子邮件错误。

这是一个苹果支持的免费框架。 关于如何在github页面上使用它的简单说明,我遵循了。 我之前使用过它并且最近提交了一个带有此框架的应用程序,该应用程序没有任何问题,目前在Test Flight Beta Testing中处于活动状态。 我还在GitHub项目页面上提交了一个问题

我遇到了像你这样的问题,我通过以下方式解决了这个问题:

  • 删除ResearchKit中的可执行文件
  • 在ResearchKit中找到info.plist,执行:
    删除ResearchKit中的info.plist。 或者您可以在此info.plist中添加Bundle版本,Bundle标识符,Bundle版本,它们应该与您自己的info.plist中的参数相同
  • 检查目标 - 信息 - URL类型,检查是否存在非法标识符

我联系了Apple技术支持,他们帮我解决了这个问题。 就像我怀疑的那样,没有必要以任何方式改变ResearchKit框架以使其正常工作。

对我来说,问题是我将整个源代码,测试用例,Xcode项目和ResearchKit的其余部分复制到应用程序中。

我必须在早期阶段做到这一点并没有意识到。 对我有帮助的是转到XCode中的Build Phases选项卡并查看不同的部分。 我的错误是我在以下部分中有了researchkit框架: Link Binary with LIbrariesCopy Bundle Resources 我需要删除它们。

通过将xcodeproj文件拖动到项目并嵌入二进制文件所获得的正确配置将只是添加到Build Phases中Target DependenciesEmbed frameworks部分。

以下是我更正的配置的屏幕截图: 在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM