Invalid Bundle Structure - The b

2022-06-08  本文已影响0人  zhangyin

错误现象

将Flutter项目嵌入到iOS的Native应用中,打包上传Appstore时抛出以下错误:

Invalid Bundle Structure - The binary file 'kdh.app/Frameworks/App.framework/App' is not permitted. Your app can’t contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. Refer to the Bundle Programming Guide at https://developer.apple.com/go/?id=bundle-structure for information on the iOS app bundle structure.

错误里的关键词如下:

打包后的文件里包含一个App可执行文件,其实就是dart代码的库,按理说这里应该是一个 App.framework, 而不是一个App 文件;
错误的截图如下:


581655126019_.pic.jpg

解决方案

应用程序包倒是可以上传了,但是自动审核失败了,失败提示为:

Dear Developer,
We identified one or more issues with a recent delivery for your app, "KDH" 1.2.0 (1). Please correct the following issues, then upload again.
ITMS-90036: This bundle is invalid - The Info.plist file for App.framework is missing or could not be read.
Best regards,
The App Store Team

最终的解决方案

但凡聪明一点都不要用这个方法,真的是太惨了...

之前的老项目使用 Rosetta方式启动XCode,而且还必须使用 Legacy build system来进行编译才能正确运行在模拟器、真机,并打包上传Apptore。
因此根据错误现象,判断下来应该是项目中某些配置有问题,但是因为学艺不精,无法找到具体的错误位置,只能采取最惨烈的方式:重建整个项目;

(1)重新建立一个空项目
(2)引入flutter
(3)导入各种第三方的pod库及其他的静态库
(4)最后把全部的代码复制过去。

通过上述惨烈的方法,问题总算解决了,打包上传AppStoer可以正常进行了。

补充材料

Bundle Programming Guide

https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW1

上一篇下一篇

猜你喜欢

热点阅读