Ios 可执行文件包含不完整的位代码错误。要编译具有完整位代码的二进制文件,请打开Xcode并在“产品”菜单中选择“存档”

Ios 可执行文件包含不完整的位代码错误。要编译具有完整位代码的二进制文件,请打开Xcode并在“产品”菜单中选择“存档”,ios,bitcode,Ios,Bitcode,我尝试在项目文件和所有第三方库的生成设置中禁用位代码。 对于库,我收到错误“除了CbundleExecutable或受支持的捆绑包之外,您的应用程序不能包含独立的可执行文件或库。”我在项目中也遇到了同样的问题。我通过以下两种解决方案(解决方案1和解决方案2)解决了这个问题 解决方案1 您可以通过在关闭标记之前向iOS应用程序项目的.csproj文件添加以下行来禁用位代码 <Target Name="BeforeCodesign"> <Exec Command="$(_Sdk

我尝试在项目文件和所有第三方库的生成设置中禁用位代码。
对于库,我收到错误“除了CbundleExecutable或受支持的捆绑包之外,您的应用程序不能包含独立的可执行文件或库。”

我在项目中也遇到了同样的问题。我通过以下两种解决方案(解决方案1和解决方案2)解决了这个问题

解决方案1 您可以通过在关闭标记之前向iOS应用程序项目的.csproj文件添加以下行来禁用位代码

<Target Name="BeforeCodesign">
  <Exec Command="$(_SdkDevPath)\Toolchains\XcodeDefault.xctoolchain\usr\bin\bitcode_strip %(_Frameworks.FullPath) -r -o %(_Frameworks.FullPath)" />
</Target>


解决方案2 在iOS应用程序(或本机框架应用程序,如果您在本机框架项目中遇到此问题)的.csproj中,搜索需要关闭位代码的发布配置的PropertyGroup,如下所示:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">

在该组中,查看MtouchEnableBitcode是否已存在,并对其进行编辑,否则添加以下行:

<MtouchEnableBitcode>false</MtouchEnableBitcode>
false

解决方案3 使用Xcode 9和最新版本的Xamarin.iOS构建应用程序

原因:
无效捆绑包-无法处理应用程序,因为在提交中检测到不允许嵌入位代码的选项。很可能您没有使用Xcode中提供的工具链构建应用程序。更多细节