项目开发中,经常会使用自己封装或第三方的framework,但是出现问题时,我们需要调试framework包里的代码,怎么把现有工程和framework包的源码相关联,一起调试呢?可以使用xcode提供的workspace把两个项目关联起来。
一、创建xcworkspace
打开xcode,菜单File -- New -- Workspace...
创建完是一个空的workspace
二、关联项目
以上一篇iOS创建framework静态库(SDK&组件化)创建的两个项目为例
菜单File -- Add Files to “MyWorkspace”...
分别把 MySDK.xcodeproj 和 UITest.xcodeproj 添加进此workspace
三、联调
1、删除主项目中的MySDK.framework包
2、给主项目添加framework包
点“+”后,在列表中会显示出MySDK项目的Products里的framework包,选择并添加
3、然后选择主项目,选择模拟器运行:
可以看到依然能正常输出:
2020-07-28 11:16:14.792496+0800 UITest[1736:64221] MyTools First Method
而且在framework包源码工程代码里打断点也是可以断到的:
注意!!!
当要用workspace调试多个项目的时候,每个子项目就不能单独用xcode打开了,而且每个子项目都得关掉,才能用workspace正常联编。