免證書在MacOSX10.8.2上使用XCode4.5.2上真機調試

網上又很多關於免證書調試的教程,本文借鑑了許多,其中比較不錯的是http://blog.csdn.net/lgm252008/article/details/8462753,大家可以參考,感謝heartrude的分享。

由於本人不太熟悉Unix系統上那些破命令,習慣了界面操作,所以向大家分享下我是如何破解xcode實現真機調試的,

首先你需要你的ios設備是已經越獄的,沒有越獄目前我還不知道如何調試,也許有辦法,相信大神們能夠研究出來。其次需要安裝Xcode4.5.2(想必看到這篇文章的同學大部分是安裝了的)如果你的設備沒有越獄可以忽略本文,飄過。當然也可以繼續往下看,看我是如何做到的。

很高興你能看到這。。。

下面開始破解過程:

1. 使用鑰匙鏈工具創建證書

鑰匙連工具在LaunchPad中圖表如下圖(圖1)所示


(圖1)

打開後使用證書助手創建證書,如下圖(圖2)


(圖2)

點擊創建證書後彈出如下界面(圖3)


(圖3)

填寫說明見上圖,之後一路點擊確定之後創建完成,中間不需要做任何其他更改。。。

上圖中名字爲iPhone Developer

2. 修改XCode的配置文件

這裏需要改的有SDKSettings.plist和 Info.plist這兩個文件

回到桌面,進入到電腦根目錄下,如下圖(圖4)


(圖4)

點擊Computer進入到系統根文件夾


(圖5)

切換到如下瀏覽模式, Applications文件夾下看到Xcode了吧(如下圖(圖6)),接着往下看。。。

(圖6)

右鍵上圖中的Xcode點擊Show Package Contents


(圖7)

點擊之後資源管理器應該變成下面的樣子。

(圖8)

然後點擊Contents->Developer->Platforms->iPhoneOS.platform,結果如下圖

(圖9)

看到info.plist 了吧,這是我們需要改的其中一個文件,雙擊後會自動選擇Xcode打開,

改之前請先備份,info.plist.orig就是我的備份文件

打開後如下圖


(圖10)

展開上圖中的紅色方框中的項,將其中鍵值有XCiPhoneOSCodeSignContext 的修改成 XCCodeSignContext

保存關閉

繼續點擊(圖9)中的Developer->SDKs->iPhongOS6.0sdk結果如下圖


(圖11)

此時我們已經能看到我們要改的第二個文件SDKSettings.plist, 同樣爲了安全起見先備份一下,SDKSettings.plist.orig是我的備份文件。

雙擊SDKSettings.plist,,自動由xcode打開


(圖12)

展開上圖(圖12)中的紅色框中的項,將其中的CODE_SIGNING_REQUIREDENTITLEMENTS_REQUIRED兩個屬性改爲NO

保存後關閉。

至此我們完成了Xcode配置文件的修改。

3. 創建並運行腳本

使用TextEdit或者其他任何文本工具在桌面上創建一個script文件,文件內容如下

#!/bin/bash
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
printf "xc3x26x00x00" >> working
/bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
/bin/mv working iPhoneOS\ Build\ System\ Support
chmod a+x iPhoneOS\ Build\ System\ Support
保存退出後打開命令行窗口cd Desktop/ 

然後修改文件權限爲777, 命令爲chmod 777 script

然後執行腳本命令爲 ./script

執行完後輸出類似這樣的文字就代表成功了

67+1 records in
67+1 records out
33804 bytes transferred in 0.009863 secs (3427390 bytes/sec)

4. 自定義生成腳本

拷貝下面的命令到命令行窗口,不出意外自動執行, 需要聯網,沒聯網的參考http://blog.csdn.net/lgm252008/article/details/8462753

mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements
cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements
curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
mv gen_entitlements.txt gen_entitlements.py
chmod 777 gen_entitlements.py

5. 修改項目配置

 將你的xcode項目BuildSettings中的所有的Code Signing選項全部設爲Don't Code Sign

如下圖


(圖13)

然後在BuildPhases中點擊這個(圖14中所示)


(圖14)

添加執行腳本

export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then
/Applications/Xcode.app/Contents/Developer/iphoneentitlements/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi
添加後效果如下圖(圖15)


(圖15)

至此我們已經完成了所有的配置,插上你的設備享受真機調試吧。。。


後記:

本文大量的命令來自http://blog.csdn.net/lgm252008/article/details/8462753,本文在此基礎上完成。

轉載請註明:http://blog.csdn.net/w568083142/article/details/8487701謝謝


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章