上传AppStore报错:ERROR ITMS-90206:"Invalid Bundle. The bundle at 'XXX.appex' contains disallowed file...

一、报错描述

今日打包上传到AppStore时,报了以下错误:

ERROR ITMS-90206:"Invalid Bundle. The bundle at 'XXX.appex' contains disallowed file 'Frameworks'."

报错截图如下:


上传报错

二、问题分析

将报错翻译一下,意思是说:无效的包。此包的xxx.appex中包含Frameworks,而实际不应该包含任何Frameworks的。

具体到我的项目中,BroadCast是一个Extension工程。既然报错中有具体路径,我们不妨将上传失败的包导出来,看看包里的xxx.app/Pluglns/XXX.appex中是否包含Frameworks。

三、定位问题

XXX.ipa包后缀改成.zip,然后解压缩--找到XXX.app--显示包内容--选中XXX.appex--显示包内容,最后如下图所示:

image.png

果然,在对应的路径找到了不应该出现的Frameworks目录!

四、问题解决

猜想:可能是extension工程包含了Frameworks之后,会和主工程造成重复包含,所以报这个错误。
解决步骤:
1、在Build Settings中设置主工程的Always Embed Swift Standard Libraries设为YES

主工程配置

2、在子工程的Always Embed Swift Standard Libraries设为NO
image.png

到此,大功告成!

你可能感兴趣的:(上传AppStore报错:ERROR ITMS-90206:"Invalid Bundle. The bundle at 'XXX.appex' contains disallowed file...)