美文网首页
Xcode8使用插件功能记录

Xcode8使用插件功能记录

作者: 哆啦A梦频道 | 来源:发表于2016-12-10 10:41 被阅读0次

    苹果为了避免类似 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`
    

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

    相关文章

      网友评论

          本文标题:Xcode8使用插件功能记录

          本文链接:https://www.haomeiwen.com/subject/mvgymttx.html