Xcode升級到8.x以上版本后為了提升安全性, 防止XcodeGhost事件的發(fā)生, 添加了代碼簽名機制, 所以我們要使用插件第一步是給Xcode重新簽名, 這是Xcode8+最為重要的一步
1.可能在老版本中的插件已經(jīng)不在支持新版Xcode,為了能夠正常使用還是建議使用以下命令全部刪除之前的插件重新安裝
rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin
rm -rf ~/Library/Application\ Support/Alcatraz/
2.在電腦鑰匙串中新建一個代碼簽名證書 (這一步對于Xcode8+ 十分重要)
創(chuàng)建證書路徑
開始創(chuàng)建證書
鑰匙串中搜索證書
修改證書信息為始終信任 ,后面有用
3.證書配置完畢 在終端執(zhí)行命令配置相關信息 "XcodeSigner"字段是你生成證書時名字
sudo codesign -f -s XcodeSigner /Applications/Xcode.app
4.安裝最新的Alcatraz插件
curl?-fsSL?https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh?|?sh
另提供本地安裝方法:
下載地址:https://github.com/alcatraz/Alcatraz
官網(wǎng)地址:http://alcatraz.io/
安裝成功以后會出現(xiàn)下圖
Alcatraz安裝成功
5.安裝簽名插件? (可能會卡在那里? 需要手動回車,然后輸入電腦密碼執(zhí)行)
sudo gem install -n /usr/local/bin update_xcode_plugins
安裝成功
6.查看已經(jīng)安裝的插件,并對已經(jīng)安裝的插件全部升級,在步驟1不想全部刪除的可以使用這個命名嘗試
Added ***************** to Alcatraz(1.2.1) ” 即為把新版Xcode的DVTPlugInCompatibilityUUID加入到每一個插件的Info文件中
7 執(zhí)行update_xcode_plugins --unsign命令 讓Xcode解除簽名,只有這樣我們才能真正的使用Alcatraz,可能會需要時間,請等待
update_xcode_plugins?--unsign?
7.1 注意: 可能會卡在那里,需要手動回車并輸入Yes 執(zhí)行以下命令
Xcode解除簽名
8 .注意:在使用插件爽完之后記得在打包的使用一定要使用Xcode簽名,不然你就嘿嘿嘿~
update_xcode_plugins?--restore?
9.重新啟動Xcode 然后看到彈窗提示選擇 load bundle
彈框提示
10.打開Xcode,就看到我們熟悉的Package Manager了
總結:小編遇到一些坑? 有一樣的同學可以這樣嘗試
1.在Xcode8+Alcatraz插件的時候? 如果沒有安裝代碼證書的時候已經(jīng)執(zhí)行了 update_xcode_plugins?--unsign 命令,我們在打開Xcode的時候可能會出現(xiàn)死機情況(我的出現(xiàn)了,解決了好久) 解決辦法就是先不打開Xcode 先執(zhí)行update_xcode_plugins?--restore 操作? 也就是步驟8
2. 執(zhí)行完步驟8之后,我們嘗試執(zhí)行步驟2,3? 這兩個是關鍵,沒有執(zhí)行update_xcode_plugins?--restore ,直接執(zhí)行步驟3的話可能會出現(xiàn)直接輸入密碼卡死或很久失敗情況
2.1.執(zhí)行完update_xcode_plugins?--restore, 在執(zhí)行步驟3 可能直接是下面視圖
3.如果看不到Package Manager的情況可以嘗試直接添加UUID到info.plist文件中,查看命令
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
3.1 到對應的目錄路徑下面, 找到插件并打開顯示包內(nèi)容并打開info.plist文件
cd /Users/xxxx/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins
3.2 直接添加到里面即可
UUID 添加info.plist文件中
3.3 批量更新插件的 DVTPlugInCompatibilityUUID 的命令(建議使用sudo方式執(zhí)行)
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth3| xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add`defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID`
作者:字符管理師校長
鏈接:http://www.reibang.com/p/cd75a6e7edf0
來源:簡書
簡書著作權歸作者所有湿蛔,任何形式的轉(zhuǎn)載都請聯(lián)系作者獲得授權并注明出處澎羞。