ios - Xcode 中的库未加载问题

标签 ios xcode frameworks

我搜索了一些关于Library not loaded 的答案,我发现几乎所有与在应用程序中使用框架相关的答案,但我的问题是不同的。它实际上是在framework中使用framework,然后在App中使用。

假设我有框架AB,框架A 使用框架B 然后框架库没有在应用程序中加载使用,所以最终我只想在应用程序中使用或公开框架 A 而不是两者都没有直接需要未在应用程序中加载的框架库。

到目前为止我做了什么:

将框架 A 添加到应用程序中,也将其添加到嵌入式二进制文件中,并使用框架 A 的一些代码,但不使用框架 B。构建并运行

问题

构建成功,但在将应用程序安装到设备后立即生成问题。

dyld: Library not loaded: @rpath/B.framework/B
Referenced from: /private/var/containers/Bundle/Application/6A869182-AFE5-403-2809B4AAA843/A-SDK-DemoApp.app/Frameworks/A.framework/A Reason: image not found

注意:框架名称根据 A 和 B 更改。

要求 我只想与客户端共享框架 A 而不是框架 B,因为 App 只会与框架 A 通信,所以需要一些建议如何解决这个问题,也请不要向我推荐那些与单帧相关的答案添加到应用程序中。谢谢

最佳答案

花一些时间阅读这篇文章后answer , 这清楚地说

I contacted Apple with this issue and found a solution to my problem. Apple's Technical support made it clear, that I need to add the FrameworkB.xcodeproj to my application project

所以我只是使用了一些技巧,在框架 A 中转到目标 -> 添加新的复制文件阶段 -> 将目标更改为框架 -> 添加框架 B,如屏幕截图所示。

enter image description here

现在构建 Framework A,转到 Product 文件夹并单击 show in finder Framework A,您将看到 Framework B 将被添加并在 A 内部公开,如屏幕截图所示。

enter image description here

这一切都来自框架方面,现在在 App 的嵌入式部分添加框架 A。现在再次尝试在嵌入式部分添加另一个框架,然后单击添加其他按钮,单击框架 A -> 单击框架文件夹选择框架 B,如屏幕截图所示。

enter image description here

这将解决问题。如果有人不明白,请随时发表评论,我会尽量说清楚。希望这对其他人也有帮助。

关于ios - Xcode 中的库未加载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50384137/

相关文章:

ios - 将数据从 WKInterfaceTable 传输到另一个 WKInterfaceController

ios - 为 UITabBar 中的选定选项卡设置色调颜色

java - 应该为特定的 Web 应用程序选择什么框架?

ios - iOS 框架包的路径

ios - NSMutableArray 从 viewDidLoad 初始化

iphone - 使用 v1.1 API 获取 iOS Twitter 用户时间线

ios - 未调用自定义 UITextField 委托(delegate)方法 shouldChangeCharactersIn

ios - armv6 和 armv7 的条件编译

xcode - 遍历对象/变量 Swift

ios - 存档时链接器命令失败