xcode - 框架在我的目标之一(屏幕保护程序)中不起作用

标签 xcode swift cocoa frameworks

我有一个包含 2 个目标的 XCode Swift 项目,一个传统应用程序和一个屏幕保护程序。我想在两者中都使用一个框架(我尝试过至少 2 个框架但没有成功)。

在应用程序中它们工作正常但在屏幕保护程序中,尽管我能够编译(我有一个带有适当导入的桥接文件并且我复制并链接了框架)

enter image description here

当屏幕保护程序运行时,它在控制台中出现此错误而崩溃:

Jul  1 16:33:15 ironbird.local ScreenSaverEngine[60006]: Error loading /Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja:  dlopen(/Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja, 265): Library not loaded: @executable_path/../Frameworks/Paddle.framework/Versions/A/Paddle
      Referenced from: /Users/juanjo/Library/Screen Savers/Ninja.saver/Contents/MacOS/Ninja
      Reason: image not found

有人可以帮我解决这个问题,或者至少帮我调试一下吗?如果我搜索错误,我会发现有人忘记复制或链接框架,但我不是这种情况。

提前致谢!

更新:如果我使用 install_name_tool 更改查找图像的绝对路径路径,我会运行屏幕保护程序。

最佳答案

我让它工作改变原来的框架是这样的:

$ cd Frameworks/Paddle.framework/Versions/A/
$ install_name_tool -id @rpath/Paddle.framework/Versions/A/Paddle Paddle

关于xcode - 框架在我的目标之一(屏幕保护程序)中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31189571/

相关文章:

ios - 视网膜和非视网膜设备当我们在设备的中心移动时,左下角的一些点也会移动

ios - Crashlytics iOS - 在第 0 行崩溃 - Swift 来源

objective-c - NSWorkspace 的 runningApplications 有多可靠?

ios - JSQMessagesViewController 更改发送按钮 TextView 占位符的语言

ios - 是否可以在没有开发人员程序的情况下在 iOS 7.1.2 和 Xcode 版本为 6.1.1 上测试我的 iPhone 应用程序

iphone - 旧项目在 iOS 5 上运行缓慢

ios - NSFetchedResultsController - 反转 NSIndexPath 与乘法部分和分页

ios - 创建事件后将信息推送到 firebase(Firebase-Realtime-Database)

objective-c - 任何 NSImage 的棕褐色版本

swift - 窗口在所有空间可见(包括其他全屏应用程序)