我使用以下教程构建了一个框架.
我也有这个框架.
我正在尝试在我的内部实现第二个框架,从我在Apple文档中读到的结果框架被称为"伞框架".
我在框架中使用拖放添加了第二个框架,并验证它是否在"Link Binary With Libraries"中.
在我尝试在我的框架的一个类中进行下一次导入之后:
#import <CrashReporter/CrashReporter.h>
Run Code Online (Sandbox Code Playgroud)
我收到错误,因为导入的框架不可见.
另外我看过stackoverflow帖子: 如何在iOS SDK中创建一个伞形框架?
有没有人试图为iOS提取PLCrashReporter类并将其集成到一个项目中?
你可以在这里找到我的尝试.
我试图嵌入一个使用另一个框架的框架,这在模拟器中运行得很好,但它在iOS设备上崩溃:
dyld:未加载库:@ rpath/FrameworkB.framework/FrameworkB参考自:/private/var/mobile/Containers/Bundle/Application/B072CD7C-8595-4AE4-A506-26832A0F4402/FrameworkTest.app/Frameworks/FrameworkA.framework/ FrameworkA原因:找不到图像
这是我在Xcode中的结构:
应用程序(FrameworkTest)使用FrameworkA中的一个类A(嵌入在FrameworkTest应用程序中).该类A使用BFrameworkB中的类(在FrameworkA中链接).
这在模拟器中工作得很好,但它在设备上不起作用.
结构可能看起来有点奇怪,但我在开发应用程序时正在开发框架,这就是为什么我想在我的应用程序项目中添加框架项目.
我已经在GitHub上传了这个项目供你查看,如果你需要仔细看看.(该类A在AppDelegate.m文件中调用)
为什么这在iOS模拟器中工作而不在设备上?我怎样才能让它在设备上运行?
编辑:
作为simonthumper暗示的意见,我也尝试添加FrameworkB.framework到Copy Files为框架,构建阶段的FrameworkA目的地,但是,让我在控制台此错误:
dyld:未加载库:@ rpath/FrameworkB.framework/FrameworkB参考自:/private/var/mobile/Containers/Bundle/Application/2A38A2BC-9CD7-4AF6-9E50-42C16D92D6B2/FrameworkTest.app/Frameworks/FrameworkA.framework/ FrameworkA原因:找不到合适的图像.找到了:/private/var/mobile/Containers/Bundle/Application/2A38A2BC-9CD7-4AF6-9E50-42C16D92D6B2/FrameworkTest.app/Frameworks/FrameworkA.framework/Frameworks/FrameworkB.framework/FrameworkB:mmap()错误1 at地址= 0x10012C000,大小= 0x00008000段= __ TEXT in Segment :: map()映射/private/var/mobile/Containers/Bundle/Application/2A38A2BC-9CD7-4AF6-9E50-42C16D92D6B2/FrameworkTest.app/Frameworks/FrameworkA.framework /Frameworks/FrameworkB.framework/FrameworkB