【问题标题】:Failed to codesign libSkiaSharp未能对 libSkiaSharp 进行代码设计
【发布时间】:2021-11-02 02:13:49
【问题描述】:

我有一个适用于 android 和 ios 的 Xamarin.Forms (5.0.0.2083) 应用程序。我正在使用 Visual Studio 版本 16.11.2 和带有最新 xcode 的 mac。我可以通过每个平台的模拟器在 android 和 IOS 上构建和执行应用程序。我还可以存档 android 的生产版本。但是,每次我尝试为 IOS 归档生产版本时,都会出现以下错误。我对此并不陌生。几年来,我一直在改进并将这个特定应用程序部署到生产环境中。但是我们添加了一些功能并升级了 nuget 包,现在我似乎无法构建生产 IOS 版本。我已经尝试了我能想到的一切来解决这个问题。删除和重新创建证书和配置文件。不同的windows机器,不同的mac。不同版本的视觉工作室。降级skiasharp等......结果都一样。当我直接尝试最新版本的 Visual Studio for Mac 时,我也得到了相同的结果。有人可以告诉我如何解决这个问题吗?

4> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil -num-threads 4 -z -o bin/iPhone/Release/IVI.Central.Mobile.iOS.app.dSYM bin/iPhone/Release/IVI.Central.Mobile.iOS.app/IVI.Central.Mobile.iOS
4> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip -i -s obj/iPhone/Release/mtouch-symbols.list bin/iPhone/Release/IVI.Central.Mobile.iOS.app/IVI.Central.Mobile.iOS
4> /usr/bin/mdimport bin/iPhone/Release/IVI.Central.Mobile.iOS.app/../
4> Tool /usr/bin/codesign execution finished (exit code = 1).
4>
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error : /usr/bin/codesign exited with code 1
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error :
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): **error : Failed to codesign** 'bin/iPhone/Release/IVI.Central.Mobile.iOS.app//Frameworks/**libSkiaSharp.framework/libSkiaSharp**': /Users/paulaicher/Library/Caches/Xamarin/mtbs/builds/IVI.Central.Mobile.iOS/849a0f003a7017afb02a607086b4ad9a3834fdb506af57c8fbe9219b92682d08/bin/iPhone/Release/IVI.Central.Mobile.iOS.app/Frameworks/**libSkiaSharp.framework: replacing existing signature**
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error : Warning: unable to build chain to self-signed root for signer "Apple Distribution: Industrial Ventilation, Inc (EQS49K4W53)"
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error : /Users/paulaicher/Library/Caches/Xamarin/mtbs/builds/IVI.Central.Mobile.iOS/849a0f003a7017afb02a607086b4ad9a3834fdb506af57c8fbe9219b92682d08/bin/iPhone/Release/IVI.Central.Mobile.iOS.app/Frameworks/libSkiaSharp.framework: errSecInternalComponent
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error :
4>C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Xamarin\iOS\Xamarin.Shared.targets(1075,3): error :
========== Rebuild All: 3 succeeded, 1 failed, 0 skipped ==========

【问题讨论】:

  • 是的,我已经浏览了您在谷歌查询中引用的每一篇文章。最新的是今年五月。他们都报告说在我目前使用的 5 或 6 个版本的 Visual Studio 版本中得到了修复。回到我的问题,如何解决代码签名问题?我试图弄清楚如何更好地了解这里实际发生的情况。

标签: ios visual-studio xamarin xamarin.forms


【解决方案1】:

经过大量挖掘,我终于弄明白了。该错误误导我相信这与 libSkiaSharp 有关。 (主要是因为那是它引发错误的原因)在从我的项目中完全消除 libSkiaSharp 之后,我发现我仍然有签名错误。它只是不再有skiasharp的额外错误。

所以我终于找到了我的 macincloud VM 和我刚购买的全新 Mac;两者都在钥匙串中安装了旧的“Apple Worldwide Developer Relations Certification Authority”证书。虽然尚未过期,但他们已开始使用更新后的新证书颁发机构颁发新证书。 See Detail Here

在 Apple 的文档中,XCode 版本 11.4.1 及更高版本应该会自动安装新更新的证书。显然 XCode 12.5.1 没有这样做。

解决这个问题:

  1. 在你的 Mac 上打开钥匙串
  2. 选择登录钥匙串
  3. 选择证书类别
  4. 删除“Apple Worldwide Developer Relations Certification Authority”证书。
  5. Renewed certificate下载新证书并安装
  6. 返回 Visual Studio 并构建

【讨论】:

  • 在这里工作,非常感谢!
  • 工作。我没有“Apple Worldwide Developer Relations Certification Authority”证书,我刚下载了新的,我必须重启VS,否则它不会构建
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多