1. 程式人生 > >解決Xcode專案出現My mac 64-bit/設定允許使用者外部資源同步到App/解決CodeSign error: Certificate identity ‘iPhone Distributio

解決Xcode專案出現My mac 64-bit/設定允許使用者外部資源同步到App/解決CodeSign error: Certificate identity ‘iPhone Distributio

轉自

http://www.himigame.com/iphone-cocos2d/621.html

本章節Himi為大家總結幾點經常用到的功能或者經常出現的問題以及解決方法;

本章節主要介紹3個知識點:

1. 解決Xcode中選擇裝置執行專案時,裝置一欄現實“My mac 64-bit”問題;

2.設定允許使用者利用itunes同步一些資源到我們的App中;

3.解決CodeSign error: Certificate identity ‘iPhone Distribution***證書問題

1.  首先介紹如何解決裝置一欄現實“My mac 64-bit”問題:

童鞋們都知道Xcode會根據當前SDK在Run按鈕旁邊的選項欄中顯示適合的Simulator供開發者選擇,如下圖:

但是有時候則錯誤顯示“My mac 64-bit” ,這個明顯不是我們想要的,如下圖:

上面這種情況主要出現原因在於你打開了另外一個mac電腦copy過來的專案時或者其他原因造成出現,那麼解決的方法這裡Himi給出來:

解決步驟:

首先關閉你的Xcode,找到你出現解決此問題的專案目錄下,然後此專案的***.xcodeproj 檔案,然後右鍵選擇“顯示包內容”,如下圖:

一般情況下,包中有如下3個檔案:

1.project.pbxproj        2.project.xcworkspace    3.xcuserdata

找到“xcuserdata”這個罪魁禍首,將其整個移到廢紙簍中,OK,重新開啟你的專案,則正常顯示可使用的Simulator;

2.  設定允許使用者利用itunes同步一些資源到我們的App中;

簡單的解釋一下,允許使用者利用itunes同步一些資源到我們的App中,其實就是如一些地圖等軟體一樣,就拿地圖軟體來說吧,如果開發者在製作的時候將每個地區的離線地圖包全部放置在一個ipa中,那麼不僅造成這個ipa的包體積變得很大,還會有一些使用者反饋說根本自己用不到那麼多城市離線地圖資源非要下載下來,另外一點就是由於這個ipa包體積過大影響這個地圖app的推廣等等(3G有20MB下載限制,這個童鞋們要心中有個數),當然解決包體積問題以及為了讓使用者更自由選擇地圖離線包的方案就是將所有地圖離線包放在自己公司的伺服器上,前臺客戶端使用者可以進入軟體後自定義下載需要的資源包即可或者使用者使用電腦下載資源包然後通過itunes同步到手機的這款地圖App中;那麼解釋了半天其實就是為了說明今天我們要講到的如何來讓我們的App允許使用者外部同步資源到我們的App中,很簡單,方法如下:

首先找到我們專案中的 info.plist檔案,然後Add Row一條設定:

Application supports iTunes file sharing         YES    (如下圖:)

注意: 當用戶通過itunes同步外部資源到我們的App下,默認同步到我們App的Documents路徑下!

OK,下面我們測試一下:

首先Himi利用一個mac上的手機工具開啟剛剛加入設定的專案(Himi_ClientResTest),資源目錄如下圖:

可以看到這個專案Documents路徑下沒有任何檔案,然後Himi利用itunes同步一張名字為“himi.png”的圖片到這個測試專案中,如下圖(點選放大)

最後再次利用手機工具檢視這個專案Documents路徑下,如下圖:

3.  解決CodeSign error: Certificate identity ‘iPhone Distribution***證書問題

有的童鞋們可以在將ios專案進行Archive打包時,Xcode提示以下錯誤:

[BEROR]CodeSign error: Certificate identity ‘iPhone Distribution: ***.’ appears more than once in the keychain. The codesign tool requires there only be one.

1

那麼出現此問題的原因是多個證書之間衝突造成,以下有兩種解決方式:

1. 開啟你mac系統的“實用工具”-“鑰匙串訪問”-“我的證書”中,會看到有證書名一模一樣的,那麼請將早期的證書刪除掉,重啟Xcode;

2. 將Xcode中的證書全部刪除,只保留你當前要使用的這個證書即可,然後重啟Xcode;

OK,就到這,下篇見;