我正在尝试验证/提交我的应用,它给了我这个错误。我尝试了之前对这个问题的回复中提到的所有可能的建议,但都没有奏效。
我删除了CFBundleKey,还在info.plist中将CFBundlePackageType键的值从APPL更改为BNDL。
我也附上了截图。
请为此提供一个解决方案,非常感谢,因为我被困住了。
我的应用程序的包标识符有一个数值,是否会导致问题?
答案 0 :(得分:1)
与info.plist文件的连接可能导致此问题。尝试从目标更改bundle id并检查它是否反映在plist文件中,反之亦然。如果这不反映将plist文件复制到其他位置,请将其从应用程序中删除并再次拖放,这将有所帮助。这解决了我的问题,希望它有所帮助。
感谢您的努力。
答案 1 :(得分:1)
如果您收到此错误,请检查您的info.plist文件,
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
并添加此密钥。
答案 2 :(得分:1)
您应该输入general以查找嵌入式二进制文件,并删除您的框架。
答案 3 :(得分:-1)
对于来自Google的未来人:
我最近遇到了这个问题(向我们分发了第三方静态库+捆绑软件),并尽了一切努力,最终屈服了,并能够获得Apple开发人员的支持。事实证明,捆绑软件的创建者将Info.plist放在错误的位置。引用苹果公司知识渊博,乐于助人的人:
Info.plist必须位于包的根目录,而不是 资源文件夹。由于未在预期位置找到Info.plist 位置描述对捆绑包的期望,然后继续 查找可执行代码,因为iOS支持的捆绑类型为APPL, FMWK和XPC都应具有捆绑包可执行文件。
和
将Info.plist文件移动到正确的位置是您的短期选择 解决方法,但您还应该考虑消除捆绑软件 完全是长期的。如果您在中打开新项目窗口 Xcode,您会看到一个用于提供通用目的的模板 捆绑软件仅在macOS部分可用,而在iOS上不可用。 Xcode 从来没有iOS的通用捆绑包起点,所以大多数 开发人员手工制作的套装接近预期 iOS的结构超出了macOS的基础,但不完全符合 整个系统的期望,导致各种意外 诸如此类的问题。如果您的捆绑商品内容与 框架,您可以直接将内容嵌入框架 包,如果是用于应用程序,则可以直接部署内容 进入主要的.app捆绑包。
和
捆绑在iOS上不存在,特别是在BNDL的意义上。他们是一个 macOS概念旨在包含插件的可加载代码, 在iOS上不存在,而该部分记录在 以下位置: https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW30
在iOS上使用BNDL作为资源容器,而无需加载代码 是开发人员社区中发展的一种约定。他们的方式 如您的应用程序中的多个捆绑包所示,它们用于iOS 有效地用作组织的带有精美文件名的文件夹 原因。使用不带.bundle文件扩展名的文件夹 具有相同的组织目标,同时也避免陷入困境 在验证过程中尝试确定是否发现了什么 是应用程序,框架或应用程序扩展包。
因此,结论是:避免在iOS中使用捆绑软件。您最终可能会冒险通过有时不透明的Apple验证程序,而几乎看不到收益。