將XCODE的程式發佈到iOS裝置
以下是我使用的作業環境
- Mac Lion 10.7.4
- XCODE 4.3.3
- iOS5.1 裝置為 iPhone 4
Step 1.製作假驗證
首先在Finder的地方,點選前往 -> 工具程式。

開啟鑰匙圈存取。

選取鑰匙圈存取 -> 憑證輔助程式 -> 製作憑證。

- 名稱:fake
- 識別身分類型:自簽根
- 憑證類型:代碼簽名
*覆蓋預設值(勾選)
繼續之後會跳出一個對話視窗一樣選取繼續。

- 序號:121212
- 有效時間:999
接著一直繼續到最後。

Step 2.修改XCODE讓他可以抓取到我們的製作的假驗證。
開啟應用程式資料夾,找到XCODE,右鍵 -> 顯示套件內容。

依照Contents/Developer/Platforms/iPhoneOS.platform的路徑尋找到Info.plist
。

- 將
Info.plist
複製到桌面上開啟,使用cmd+f
尋找CODE_SIGN_CONTEST_CLASS
,將原本的預設值改為XCCodeSignContext
(共有兩個地方要修改)。 RuntimeRequirements -> Classes -> item 0
的預設值也改為XCCodeSignContext
。
ps.這樣總共有三個地方要修改為XCCodeSignContext
。
修改完後將該檔案貼回原本的地方並且取代掉。
Step 3.修改專案。
接著在你的XCODE
專案,點選專案的設定檔PROJECT
-> Build Settings
-> Code Signing
-> Code Signing Identity
。

將裡面的憑證選取您剛新增的金鑰名稱,這裡使用之前已經建立好的fake code sign
,所以會跟前面有所不同!!

建立完之後在編譯專案的右邊,選取我們要發佈的裝置,記得裝置必須先與電腦連接。接著就可以編譯發佈到實體裝置上了。

發佈的時候如果點選App後馬上閃退的話,這時修改一下Scheme
。

選擇第二個Run XXX.app
-> Info
-> Debugger
-> 選取GDB
,最後按下OK,再次重新編譯專案發佈到實體裝置,應該就可以解決閃退的問題了。
