我正在从事一个iOS框架项目,该项目使用第三方框架类,因此我在链接框架和库部分中添加了第三方框架。
当我在我的iOS应用程序项目中添加我的自定义框架时,我得到了每个类的警告
/private/var/containers/Bundle/Application/C131AF0F-7CF8-4360-8716-3E8A595169D6/'app_name'.app/Frameworks/'framework_name'.framework/'framework_name‘和/var/containers/Bundle/Application/C131AF0F-7CF8-4360-8716-3E8A595169D6/'app_name'.app/'app_name'.都实现了类“class_name”两个中的一个将被使用。哪个是未定的。
iOS应用程序项目也与第三方框架相关联。所以我想解决这个问题,因为我的框架也包含了第三方框架的编译版本。
我没有找到合适的解决办法。有人能告诉我怎么摆脱这个吗?
有什么办法可以让它起作用吗?
发布于 2016-07-26 22:43:30
不要将第三方框架链接到应用程序目标的构建阶段。使用Link Frameworks Automatically代替。
为了更清楚地说明这一点,让我举一个例子。有一个叫做CrashReporter.framework的第三方框架。自定义框架称为HockeySDK.framework (链接到CrashReporter.framework)。然后,我的应用程序名为WeatherApp (链接到HockeySDK.framework)。
CrashReporter.framework <---
^ |
| |
| X X X NO! DONT'T LINK THIS!
HockeySDK.framework |
^ |
| |
| |
WeatherApp -----------------I不链接CrashReporter.framework在WeatherApp目标中构建阶段的Libraries部分(即使天气应用程序需要CrashReproter.framework构建)。我转到WeatherApp目标的构建设置,并确保Link Frameworks Automatically (以及Enable Modules (C and Objective-C) if on iOS)被设置为Yes。
https://stackoverflow.com/questions/37897350
复制相似问题