1. 程式人生 > >Xcode5.1.1+ios 7.1.2 免證書真機調試

Xcode5.1.1+ios 7.1.2 免證書真機調試

pan using 版本號 ons ado 下載 退出 all 替換

Xcode假設不破解。無法真機調試, 也無法編譯真機Release文件。僅僅有付費開通Apple開發人員賬號,才幹申請真機調試。而Xcode進行破解後,結合越獄的iPhone或iPad, 就可以免官方證書開發調試了!

生成本機證書

應用程序->其它->鑰匙串訪問

菜單:鑰匙串訪問->證書助理->創建證書, 然後按下面圖片順序操作就可以:

技術分享

Xcode 5免證書開發調試_打開創建證書菜單

技術分享

Xcode 5免證書開發調試_輸入證書名稱iPhone Developer並選擇覆蓋默認值

技術分享

Xcode 5免證書開發調試_確定繼續

技術分享

Xcode 5免證書開發調試_輸入序列號有效期,有效期不要超過365天


技術分享

Xcode 5免證書開發調試_輸入電子郵件地址

技術分享

Xcode 5免證書開發調試_輸入密鑰對信息

技術分享

Xcode 5免證書開發調試_密鑰使用擴展擴展選擇:簽名

技術分享

Xcode 5免證書開發調試_已擴展的密鑰使用擴展選擇:代碼簽名

技術分享

Xcode 5免證書開發調試_基本約束擴展不選擇

技術分享

Xcode 5免證書開發調試_主題備用名稱擴展輸入RFC822名稱,填入郵箱名就可以

技術分享

Xcode 5免證書開發調試_用於該證書的位置選擇鑰匙串類型為登錄

Xcode破解

保證Xcode處於關閉狀態,命令行終端,復制粘貼以下的代碼:

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
sudo dd if=iPhoneOS\ Build\ System\ Support of=~/working bs=500 count=255
sudo chown mac<span style="font-family: Consolas, ‘Bitstream Vera Sans Mono‘, ‘Courier New‘, Courier, monospace; font-size: 13px; line-height: 26px; background-color: rgb(248, 248, 248);">(你登陸系統的username,我的username是mac)</span>:staff ~/working
printf "\x8f\x2a\x00\x00" >> ~/working
dd if=iPhoneOS\ Build\ System\ Support of=~/working bs=1 skip=127504 seek=127504
sudo /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
sudo /bin/mv ~/working iPhoneOS\ Build\ System\ Support
sudo chmod a+x iPhoneOS\ Build\ System\ Support
sudo chown root:wheel iPhoneOS\ Build\ System\ Support

權限處理完畢後。把CODE_SIGNING_REQUIRED和ENTITLEMENTS_REQUIRED的值改成NO

技術分享

Xcode5免證書真機調試-改動SDKSettings.plist

改動保存後再將文件移回原處:

sudo mv ~/SDKSettings.plist /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/
sudo chown root:wheel /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/SDKSettings.plist

運行完腳本後改動"/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist"文件(權限處理同上),做例如以下改動:

sudo mv /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist ~/ #文件移動到用戶文件夾
sudo chown mac(你登陸系統的username,我的username是mac):staff ~/Info.plist

新增例如以下兩項(告知項目編譯無需證書):

PROVISIONING_PROFILE_ALLOWED = NO
PROVISIONING_PROFILE_REQUIRED = NO

技術分享

Xcode5免證書真機調試-改動Info.plist

然後將該文件裏全部的"XCiPhoneOSCodeSignContext"替換為"XCCodeSignContext",即去掉中間的"iPhoneOS" 。

假設不進行此步。編譯Device Release版本號時會報錯:

Code Sign error: a valid provisioning profile matching the application‘s Identifier ‘com.yourcompany.xxxx‘ could not be found

技術分享

Xcode5免證書真機調試-改動Info.plist替換標識

sudo mv ~/Info.plist /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/ #文件移回原處
sudo chown root:wheel /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist

改動項目屬性 (每次新建項目都要運行)

A. 點擊項目圖標,找到"BuildSettings"選項下的"Code Sign Identity",將其值所有改為"Don‘t Code Sign"

技術分享

Xcode5免證書真機調試-選擇target

技術分享

Xcode5免證書真機調試-改動Code Signing Identity

B. 切換到Build Phases選項,點擊菜單Editor->Add Build Phase->Add Run Script Build Phase,然後單擊Add Run Script,然後在Run Script中輸入下面腳本:

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

技術分享

Xcode5免證書真機調試-Add Run Script Build Phase

技術分享

Xcode5免證書真機調試-寫入腳本

Xcode破解完畢,或者更準確的講,是配置完畢!

Xcode真機調試

將 iPhone接入電腦,在Xcode的Window->Organizer中會檢測到你的iPhone.點擊 restore using developer

技術分享

查看iPhone和你的Xcode識別正常後退出Organizer。選擇編譯環境為"iPhone Device-我有一個姑娘我非常愛她",點擊"Build and Go"

技術分享

期間會出現讓我們選擇簽名證書,點選"同意"後。等待你的iPad/iPhone屏幕點亮就ok了。

你的程序會自己主動下載到你的iPhone中,能夠進行真機調試了

Xcode升級破解

假設是在原Xcode的版本號上升級到5,而且之前已經破解過。那麽僅僅須要再做例如以下步驟就可以:

在/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist中新增例如以下兩項(告知項目編譯無需證書):

PROVISIONING_PROFILE_ALLOWED = NO
PROVISIONING_PROFILE_REQUIRED = NO

然後將該文件裏全部的"XCiPhoneOSCodeSignContext"替換為"XCCodeSignContext",即去掉中間的"iPhoneOS" 。假設不進行此步,編譯Device Release版本號時會報錯:

Code Sign error: a valid provisioning profile matching the application‘s Identifier ‘com.yourcompany.xxxx‘ could not be found


Xcode5.1.1+ios 7.1.2 免證書真機調試