现在网上关于xcode插件的教程比较少,能搜到的也xcode4的,到现在为止,xcode已经7.2.1(-3-8),还有便是教程都还有一些坑并没有说到,在次,一并说了,如有遗漏,欢迎请教。
这里有一篇说得比较详细到教程//02/xcode-plugin/
本文的例子也是基于这篇文章的。
1 运行机理
xcode每次启动时,会加载路径
~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
下后缀名为.xcplugin的插件文件(其实是一个bundle)。
也就是说,xcode与插件处于同一个进程。然后便通过hook的方式,与xcode进程交互,以达到插件到作用。
注意一点,每次xcode加载插件时,确保Info.plist文件的DVTPlugInCompatibilityUUIDs字段包含当前xcode版本的uuid。
当前xcode的uuid获取方式:
在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
Info.plist的位置
右键显示包内存
确保DVTPlugInCompatibilityUUIDs字段包含有当版本xcode对应的uuid
一般网上的插件加载不成功,很多是因这个原因。
2 创建第一个插件工程
这里介绍两种方法创建一个插件工程,第一种是现成的,使用Alcatraz(一种xcode插件管理器),创建一个插件工程模版。地址在这里[/ios/0506/11765.html
](/ios/0506/11765.html
)