无效的 Swift 支持 - 文件 libswiftCore.dylib 没有正确的代码签名

Posted

技术标签:

【中文标题】无效的 Swift 支持 - 文件 libswiftCore.dylib 没有正确的代码签名【英文标题】:Invalid Swift Support - The file libswiftCore.dylib doesn’t have the correct code signature 【发布时间】:2018-03-15 08:22:27 【问题描述】:

我使用的是 Xcode 9.2,swift 4。在自动签署应用程序并提交到 App Store 以供审核后,我收到这封电子邮件,其中包含以下消息: “文件 libswiftCore.dylib 没有正确的代码签名。确保您使用正确的签名,使用当前公共 (GM) 版本的 Xcode 重建您的应用程序”。 有人可以帮助解决这个挑战。正在开发原生 ios 应用,没有 xamarin。

我将如何检查 libswiftCore.dylib 是否具有正确的代码签名?如何使用当前公共 (GM) 版本的 Xcode 重建应用程序?需要帮助和解决方案请

【问题讨论】:

您使用的是测试版开发工具吗? 没有。稳定版。 Xcode 9.2 【参考方案1】:

设法以某种方式修复它......

    我删除了 package、obj 和 bin 文件夹。 恢复了 nuget,使用你最新的官方版本 3.0.1 和 3.1.0。 使用 Xamarin Studio 存档。 从 XCode,我打开存档并创建了 SwiftSupport 文件夹 并复制 所有的swift动态库文件*.dylib到里面 使用 XCode 导出存档。 使用应用程序加载器上传

希望对某人有所帮助。

【讨论】:

Ferrakkem Bhuiyan,你能告诉我在哪里找到 package、obj 和 bin 文件夹吗?以及如何实现第 2 步?什么是 nuget?【参考方案2】:

执行以下步骤:

    删除 iOS 项目中的 obj 和 bin 文件夹。 检查您的 nuget 包是 Xamarin.Swift3 还是 Xamarin.Swift4。 使用“Xamarin Studio”或“Visual Studio for Mac”归档您的应用程序。 通过“Finder”打开存档。 在其中添加一个名为“SwiftSupport”的文件夹。 (不要将其克隆到存档中)

    将swift动态库文件*.dylib(你需要的)克隆到其中。

    注意:它们应该从 Xcode 的正确工具链中复制。例如,如果您的 nuget 包是 Xamarin.Swift3,则应从 Xcode 8.3.3 (GM) 复制它们。

    使用“Xcode”导出存档。 使用“应用程序加载器”上传。

【讨论】:

以上是关于无效的 Swift 支持 - 文件 libswiftCore.dylib 没有正确的代码签名的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin.iOS - 发布应用程序 - 无效的 Swift 支持 - 文件......不匹配

无效的 Swift 支持 - 文件 libswiftCore.dylib 没有正确的代码签名

无效的二进制或无效的 Swift 支持

Xcode 7.2 无效的 Swift 支持 - 缺少 SwiftSupport 文件夹

您能否在应用程序提交状态“无效二进制”中出现错误“无效的 Swift 支持”和“缺少所需的图标文件”提供帮助?

提交应用程序时无效的 Swift 支持