如何为 xamrin 应用启用"always embed swift standard libraries"?



我有一个xamarin表单应用程序,在其中我使用为swift框架生成的绑定dll。

但根据苹果医生的说法,如果你正在构建一个不使用Swift但嵌入内容的应用程序,例如嵌入内容的框架,Xcode将不会在你的应用程序中包含这些库。若要解决此问题,请在应用程序中将嵌入式内容包含Swift代码(EMBEDED_Content_Contains_Swift(构建设置设置为YES。此构建设置指定目标的产品是否嵌入了Swift代码的内容,当设置为YES时,告诉Xcode将Swift标准库嵌入到您的应用程序中。

那么,我们如何为xamarin应用程序启用此构建设置呢?

[编辑]SwiftRuntimeSupport NuGet包已经是该项目的一部分。但是,在检查ipa时,发现swiftSupport文件夹中只包含一个空的iphoneos文件夹。

Xamarin有一个SwiftRuntimeSupport nuget,用于处理iOS版本和构建细节。

使用SwiftRuntimeSupportNuGet包将所需的dylib依赖项自动包含到生成的应用程序包中。

使用Xamarin绑定库

博客文章:绑定iOS Swift库

最近,我在使用Swift库时遇到了一个错误,我尝试了@SushiHangover的解决方案。虽然库本身并没有解决这个问题,但它在Readme文件中有以下说明,用于使用XCode而不是Visual Studio上传档案,这解决了我的问题:

  1. 在Visual Studio中,在存档之前选择一个有效的iOS设备
  2. 转到构建菜单/存档以供发布
  3. 完成后,打开Xcode并转到窗口/管理器
  4. 选择档案选项卡
  5. 在窗口左侧,选择您的应用程序
  6. 单击分发应用程序按钮并按照向导操作

最新更新