Xcode8使用插件功能记录

2016-12-10  本文已影响0人  哆啦A梦频道

苹果为了避免类似 Xcode Ghost :ghost: 事件的再次发生,Xcode8 禁用了插件机制,而开放了另一种形式: Source Editor extensions ,但是这种形式局限性太大Xcode8增加了安全相关的检查,更细点说它从根源上屏蔽了插件的工作,xcode插件在xcode8上统统不能执行。但是我们可以通过unsign的方式来运行Xcode.

工具:MakeXcodeGr8Again
MakeXcodeGr8Again 只是去除了它的签名,这样使得 Xcode8 也可以继续使用插件了。由于签名被移除,所以它的安全性又重回 Xcode7 时代,也就是还有可能受到类似 Xcode Ghost 的攻击。所以不推荐用 XcodeGr8 来提交应用到 Appstore。

MakeXcodeGr8Again的使用方法很简单,它是mac端app,打开后直接将Xcode8 拖进去,默认情况下MakeXcodeGr8Again会复制一份Xcode来unsign,这样提交到AppStore的时候又可以回到安全模式了,当然也可以选择覆盖原Xcode。等待十多分钟后,应用程序里会出现一个Xcodegr8的app,也就是复制后的unsign过的Xcode。打开就可以愉快的安装插件了。

打开Xcodegr8后第一个安装的就是Alcatraz,一款非常实用的插件管理工具。安装后重启,发现插件并不能用,后来查资料发现,安装Alcatraz后Xcode8的UUID并没有加到Alcatraz中,需要手动加入。

Xcode存放插件的目录有两个:

/Users/Lcm/Library/Application Support/Developer/Shared/Xcode/Plug-ins

/Users/Lcm/Library/Developer/Xcode/Plug-ins

因此要更新两次,执行下面的命令:

find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults read /Applications/Xcode.app/Contents/Info.plist DVTPlugInCompatibilityUUID`

find ~/Library/Developer/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults read /Applications/Xcode.app/Contents/Info.plist DVTPlugInCompatibilityUUID`

执行后再重启就可以正常使用插件了。

上一篇下一篇

猜你喜欢

热点阅读