我正在尝试在 Xcode 4.6 中调试一个 quicklook 插件。我在编辑方案中创建了可执行文件。
现在,当我构建项目时,插件未安装到“/Library/Quicklook”路径。相反,我在任何地方都没有找到它。
我想在调试模式下运行插件并想打断点,以便我可以找出插件在不同文件上崩溃的位置。
如果有人分享他的知识,那就太好了。提前致谢。
我正在尝试在 Xcode 4.6 中调试一个 quicklook 插件。我在编辑方案中创建了可执行文件。
现在,当我构建项目时,插件未安装到“/Library/Quicklook”路径。相反,我在任何地方都没有找到它。
我想在调试模式下运行插件并想打断点,以便我可以找出插件在不同文件上崩溃的位置。
如果有人分享他的知识,那就太好了。提前致谢。
您可以使用刹车点和NSLog
函数来调试 QL 插件。但首先你需要配置环境。
~/Library/QuickLook
”并设置为子路径qlmanage
使用命令复制到项目的根目录cp /usr/bin/qlmanage PROJECT_ROOT_DIR
qlmanage
您已复制到项目根目录的二进制文件-p FULL_PATH_TO_FILE_FOR_PREVIEW
完成所有步骤后,您可以运行项目并调试代码。
Xcode 6 一定有所不同,因为上面的说明对我不起作用。但这是我今天困惑的一个解决方案,并且有效。希望它会帮助别人。
(假设您的插件名称是myplugin.qlgenerator
)
首先,如果您尝试了上述早期解决方案,请撤消它们。
~/Library/Quicklook
并删除qlmanage
您可能已复制到项目根目录的副本。将可执行文件设置为/usr/bin/qlmanage
. “qlmanage”是加载和运行插件的程序。
编辑您的方案。
从左侧列表中选择“运行”,然后选择右侧显示的信息选项卡。
从可执行文件弹出窗口中选择“其他...”。将出现一个标准文件表。
键入 cmd-shift-g。将出现一个带有文本字段的“转到文件夹”表。
输入/usr/bin/
并点击 Go 按钮。标准文件表现在应该显示/usr/bin
.
选择“qlmanage”二进制文件
打开“调试可执行文件”复选框,然后单击“选择”按钮。
配置参数 Xcode 传递给 qlmanage
在 Edit Schemes 表的 Run 部分中选择 Arguments 选项卡。
删除之前尝试可能遗留的任何参数。
添加-c public.data
作为要在启动时传递的第一个参数。您可能需要根据插件支持的 UTI 类型更改此设置。
添加-g $(BUILD_DIR)/Debug/myplugin.qlgenerator
为第二个参数。这将解析为插件调试版本的路径。
添加-p '/fullpath/to/file/to/be/quicklooked
为第三个参数。这是一个应该已经存在的文件的路径。您的插件将被要求呈现此文件的预览。
关闭方案表。
就是这样。您现在应该能够调试您的插件,包括设置(和命中)断点!