如何在Xcode项目中嵌入第三方xcframework?

i7uq4tfw  于 2023-02-05  发布在  其他
关注(0)|答案(1)|浏览(442)
    • bounty将在7天后过期**。回答此问题可获得+200的声誉奖励。cyril正在寻找来自声誉良好来源的答案

我尝试在我的Xcode项目中嵌入以下第三方框架:https://dicomhero.com/downloads/,但Xcode抱怨Command CodeSign failed with a nonzero exit code。我已经尝试了几种方法之一,包括:

但它们似乎都没有工作,Xcode在启动时崩溃,建议将框架移到垃圾桶。这是一个问题,我可以修复我的结束,还是我必须联系开发人员?任何帮助将不胜感激!

d6kp6zgx

d6kp6zgx1#

我尝试使用您提供的链接下载框架,然后将其嵌入到一个空项目中。Xcode显示了有关使用不可信源代码的警告。

当您从互联网下载文件时,它会收到“隔离”属性:

$ xattr xcframework.zip 
com.apple.macl
com.apple.quarantine
com.apple.metadata:kMDItemDownloadedDate
com.apple.metadata:kMDItemWhereFroms
com.apple.lastuseddate#PS

com.apple.maclcom.apple.quarantine是这里最有趣的。
不知道macl到底是什么意思,但我假设它是某种访问控制层。这个属性的存在使操作系统显示这个“不受信任的开发者”警报。
可以使用xattr -d删除这些属性。com.apple.quarantine attr可以很好地删除,但是删除后com.apple.macl会重新出现。
当你双击一个zip压缩包来解压缩它时,Finder会将com.apple.quarantinecom.apple.macl属性重新应用到解压缩的文件或目录中。但是如果你使用unzip来解压缩压缩包,com.apple.macl将不会应用到解压缩的数据中。
您可以下载归档文件,然后执行以下操作:

$ cd ~/Downloads
$ unzip xcframework.zip
$ sudo xattr -dr com.apple.quarantine dicomhero6.xcframework

然后将.xcframework拖放到Xcode项目中。
或者,您可以通过打开系统首选项中的安全和隐私窗格并选择“无论如何都允许”来摆脱“开发人员无法验证”错误。

相关问题