XCode6.0的iOS免認證越獄真機測試方法(MAC及黑蘋果均有效),xcode6.0ios

來源:互聯網
上載者:User

XCode6.0的iOS免認證越獄真機測試方法(MAC及黑蘋果均有效),xcode6.0ios

目前在XCode上開發的iOS程式只能在模擬器Simulator中運行,如果要放到真機上測試,需要蘋果官方認證的開發人員帳號,購買開發人員認證iDP,99美金一年啊!!!

作為剛開始學習iOS編程的菜鳥,這麼大手筆花錢實在是肉疼。。。經過一番折騰,借鑒各種大神的文章,終於成功在真機上編譯運行成功!免費的哦!

這裡將方法與大家分享。

我的運行環境是:【電腦】XCode6.1 + OS X 10.9.5  【真機iPhone4】iOS7.1.2

準備工作:

1. 首先,你要有一個已經越獄的iPhone/iPod/iPad,越獄方法此處不提供。

2. 在用來測試的真機Cydia中添加源:http://apt.weiphone.com,下載適合真機系統版本的AppSync,具體下載方法自己Google下哈。

3. 在電腦上建立一個認證,用於為產生的程式簽名。

建立認證

建立認證的過程比較簡單,在電腦上開啟“其他-鑰匙串訪問”。然後在功能表列裡點擊“鑰匙串訪問-認證助理-建立認證...”來開啟嚮導。注意這裡的三個地方,必須要把名稱命名為iPhone Developer,將類型設定為程式碼簽署,將”讓我覆蓋這些預設值”選中。之後的步驟什麼都不用改,一路點擊“確定”和“繼續”,最後完成這個嚮導就可以了。

4. 如果Xcode在運行狀態,請先 Command+Q將其 完全關閉。然後開啟“其他-終端”,我們需要用到一些UNIX命令,可能看起來會比較繁瑣,但是相信我,這可是在每年節省99美金啊!

① 進入iPhone SDK目錄,指令如下:

1 cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/

備忘:不同版本的Xcode最後的版本號碼不同。在Xcode 6.0中是 iPhoneOS8.0.sdk ,未來版本可能版本高一些,早期版本的就低一些。請根據實際情況自己改動。(如果實在不知道自己的版本號碼,可以用“ls”指令查看所有檔案。)

② 備份原檔案,如果電腦設有密碼,系統會提示你輸入密碼(輸入後不會顯示出來,敲斷行符號即可)

1 sudo cp SDKSettings.plist SDKSettings.plist.orig

③ 編輯設定檔SDKSettings.plist

為了方便修改,我們可以直接用Xcode開啟這個檔案。首先要開啟這個檔案所在目錄:

1 open .

在彈出的Finder視窗中雙擊 SDKSettings.plist,會啟動Xcode的圖形介面,展開 DefaultProperties分支,將下面的ENTITLEMENTS_REQUIRED和CODE_SIGNING_REQUIRED兩個屬性改為 NO。

備忘:這裡可能會遇到系統提示【“SDKSettings.plist” is locked for editing......】,這是因為檔案讀寫的許可權問題,解決辦法如下:

首先,修改檔案夾許可權,此時我們所在目錄是iPhoneOS8.0.sdk,如果輸入指令“cd ..”返回上級目錄,“ls -al”查看所有檔案,會發現系統顯示iPhoneOS8.0.sdk -> iPhoneOS.sdk,這表示iPhoneOS8.0.sdk是指向iPhoneOS.sdk的捷徑,所以我們要修改的真本文件夾是iPhoneOS.sdk,指令如下:

1 sudo chmod -R 777 iPhoneOS.sdk

然後,修改檔案夾內所有檔案的讀寫權限:

1 sudo chmod 777 *

現在雙擊開啟 SDKSettings.plist, 你會發現,剛才不能修改的屬性可以修改了!

④ 編輯另外一個設定檔Info.plist

1 cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform2 sudo cp Info.plist Info.plist.orig3 open .

在彈出的Finder視窗中雙擊開啟 Info.plist 。分別在 DefaultProperties 分支下、 RuntimeRequirements 分支下和OverrideProperties 分支下,共有3處,將全部的 XCiPhoneOSCodeSignContext 修改成 XCCodeSignContext

備忘:同第③步,可能會遇到許可權問題,修改Platforms 檔案夾許可權和該檔案夾內所有檔案的許可權 即可,步驟同上。

5. 準備自訂的產生後指令碼(此步驟需在連網狀態下進行)

1 sudo mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements2 cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements3 sudo curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt4 sudo mv gen_entitlements.txt gen_entitlements.py5 sudo chmod 777 gen_entitlements.py

6. 修改工程設定

備忘:本階段之前的修改設定檔、準備指令碼等,只需要做一次。但本階段的操作,對每個需要真機調試的工程都要做一遍。

① 禁用Xcode自動的簽名操作

分別將工程PROJECT和TARGETS下的“Build Settings”中所有的Code Signing選項全部設為Don’t Code Sign,。

② 添加自訂的產生後指令碼 在Build Phases中,點擊左上方的”+“號,添加一個”New Run Script Phase“,輸入以下指令碼:

1 export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate2 if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then3 /Applications/Xcode.app/Contents/Developer/iphoneentitlements/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";4 codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"5 fi

至此配置全部完成!!!連上你的iPhone/iPod/iPad,編譯運行,看見真機螢幕上程式跑起來的時候,99美金就省下了!!!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.