Xcode - @IBDesignables - X.framework 缺少必需的代码签名
Posted
技术标签:
【中文标题】Xcode - @IBDesignables - X.framework 缺少必需的代码签名【英文标题】:Xcode - @IBDesignables - Required code signing missing for X.framework 【发布时间】:2018-04-16 07:44:00 【问题描述】:我知道以前有人问过类似的问题,但似乎没有什么对我有用。
我正在使用 CocoaPods 并安装框架“X”。这可以是可以在情节提要中直接编辑的任何内容。两个例子是“MBCircularProgressBar”和“UICircularProgressRing”。
我将它添加到 UIView 并立即收到此错误。它弄乱了我的 Storbyboard,但应用程序运行良好。
我正在使用最新版本的 Xcode,最新的 MAC 操作系统。
我尝试了什么?
删除了 Xcode 的 DerivedData 中的所有内容 清理、构建、刷新视图 ++ 删除有问题的 pod 并重新安装/尝试不同的 pod 在“常规”中禁用“自动代码签名”并手动将其设置为我的公司此时显示错误:
Main.storyboard: error: IB Designables: Failed to render and update auto layout status for Dashboard_UsageVC (mqT-RZ-029): dlopen(MBCircularProgressBar.framework, 1): no suitable image found. Did find:
MBCircularProgressBar.framework: required code signature missing for 'MBCircularProgressBar.framework'
23.04.2018 更新 - 仍未解决
还是有这个问题。我已经走到了极端,完全重置了我的 MAC。重新安装了一切。同样的问题。即使将 CocoaPods 降级到 1.4.0 并将 Xcode 降级到以前的版本。为了避免把我所有的头发都拉出来,我现在完成了应用程序的其余部分,没有什么特别需要,并希望在更接近应用程序发布的时候找到一个神奇的解决方案。
【问题讨论】:
试试这个命令rm -rf ~/Library/Developer/Xcode/DerivedData
然后构建你的项目
正如我的问题中提到的,这已经完成了。参考“为 Xcode 删除 DerivedData 中的所有内容”
你试过了吗?刷新所有视图或从编辑器调试选定视图
【参考方案1】:
已在 Cocoapods 1.5.2 中修复(可能是 1.5.1,但我已直接从 1.5.0 升级到 1.5.2)。
更新
我可能说得太快了。 几次构建后错误再次出现。
但是,这种解决方法似乎可以工作(适用于 Cocoapods 1.5.x),直到合并错误修复:
清理您的项目 关闭 Xcode 并删除 DerivedData在你的项目中打开 Podfile,然后添加:
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings.delete('CODE_SIGNING_ALLOWED')
config.build_settings.delete('CODE_SIGNING_REQUIRED')
end
end
然后在命令行中执行:
pod update
或pod install
来源:
https://github.com/CocoaPods/CocoaPods/issues/7606#issuecomment-381279098 https://github.com/evgenyneu/Cosmos/issues/105 https://github.com/Skyscanner/SkyFloatingLabelTextField/issues/201#issuecomment-381915911【讨论】:
你好。在我开始拔头发之前再次尝试。这是 1.52 版本的解决方法吗?我问的原因是我在 1.5 和 1.4 版本中完全按照你所说的做了,但没有任何成功。就像你提到的那样。在您开始更改变量等之前不久它似乎正在工作,然后错误再次出现。 @Sourcey86 你好。我只为 Cocoapods 1.5.2 做了这个,到目前为止它仍然有效。不要忘记在 pod 更新之前清理您的项目并删除 DerivedData。 我不需要清理项目或删除派生数据即可。只需确保将代码放在 pod 文件的最末尾,在上一个最后一个“end”标记之后。【参考方案2】:对我来说同样的错误。
对我来说,它是在安装最后一个版本 cocoapods 1.5.0 之后出现的。于是我把它降级到 1.4.0,这个 bug 就消失了。
sudo gem uninstall cocoapods
sudo gem install cocoapods -v 1.4.0
希望对你也有帮助。
【讨论】:
更新:没有解决问题。它短暂地与三分之一的豆荚一起工作,但现在我又回到了同样的问题。一个工作的 pod 可以正常工作一天,直到它在 .swift 文件中编码时再次随机出现,该文件甚至与 pod 处于活动状态的 UI 无关。上帝我有时讨厌 XCode(也就是大多数时候)。修复此类烦人的错误需要花费大量时间。【参考方案3】:这对我来说很好。当我将 cocoapods 降级到 1.4.0 时,问题就消失了。 我正在使用DownloadButton。
【讨论】:
参考:github.com/CocoaPods/CocoaPods/issues/…另一种方式。以上是关于Xcode - @IBDesignables - X.framework 缺少必需的代码签名的主要内容,如果未能解决你的问题,请参考以下文章
Xcode - IB Designable:无法渲染和更新自动布局(找不到合适的图像)
IB Designables:无法渲染和更新自动布局状态(谷歌地图)
@IBDesignable 错误:IB Designables:无法更新自动布局状态:Interface Builder Cocoa Touch Tool 崩溃