gpt4 book ai didi

iOS 框架问题 : Class is implemented in both

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:54 29 4
gpt4 key购买 nike

我正在开发一个使用第三方框架类的 iOS 框架项目,因此我在链接的框架和库部分下添加了第三方框架。

当我在我的 iOS 应用程序项目中添加自定义框架时,每个类都会收到此警告

objc[3139]: Class 'class_name' is implemented in both /private/var/containers/Bundle/Application/C131AF0F-7CF8-4360-8716-3E8A595169D6/'app_name'.app/Frameworks/'framework_name'.framework/'framework_name' and /var/containers/Bundle/Application/C131AF0F-7CF8-4360-8716-3E8A595169D6/'app_name'.app/'app_name'. One of the two will be used. Which one is undefined.

iOS 应用程序项目也与该第三方框架相关联。所以我认为出现这个问题是因为我的框架还包含第三方框架的编译版本。

我没有找到任何合适的解决方案。谁能告诉我如何摆脱它?

有什么办法可以让它发挥作用吗?

最佳答案

tl;dr 不要在应用程序目标的构建阶段 中链接第三方框架。请改用自动链接框架


为了更清楚地说明这一点,让我举个例子。有一个名为 CrashReporter.framework 的第三方框架。自定义框架称为 HockeySDK.framework(链接到 CrashReporter.framework)。然后我有一个名为 WeatherApp 的应用程序(它链接到 HockeySDK.framework)。

CrashReporter.framework  <---
^ |
| |
| X X X NO! DONT'T LINK THIS!
HockeySDK.framework |
^ |
| |
| |
WeatherApp -----------------

在WeatherApp目标的Build PhasesLink Binary With Libraries部分链接CrashReporter.framework(即使天气应用需要 CrashReproter.framework 来构建)。我转到 WeatherApp 目标的 Build Settings 并确保 Link Frameworks Automatically(如果在 iOS 上,则确保启用模块(C 和 Objective-C) ) 设置为 Yes

关于iOS 框架问题 : Class is implemented in both,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37897350/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com