蘋果證書這套東西真是能把人煩死。今天試着從頭梳理一下,之後再不糾結這塊了。
目前開發的項目用到了三個證書:真機調試,蘋果推送,以及發佈到app store。在介紹這三個證書怎麼獲取以前,先說說準備工做。首先要有蘋果開發者帳號,在developer.apple.com就能夠申請,須要支付$99每一年的費用。而後須要在mac電腦上生成一個名爲 CertificateSigningRequest.certSigningRequest 的文件(翻譯過來應該叫「證書籤名」吧)。這個文件經過 鑰匙串程序-鑰匙串訪問-證書助理-從證書頒發機構請求證書 得到。郵箱能夠隨便寫,而後勾選保存到磁盤就行。這個文件是後面生成各類證書的基礎。
真機調試
某位大神給出了真機調試所需文件的概述:
「蘋果然機調試須要證書(Certificates)和描述文件(Provisoning Profiles)
一、證書(Certificates) 經過蘋果自帶的鑰匙串生成後上傳到Developer中再生成來完成
二、描述文件(Provisoning Profiles) 生成描述文件時須要選擇App ID(包含Bundle,必須與你程序的bundle保持一致,爲了能同時調試多個程序,通常bundle填寫時末尾用*號代替,後文會具體說明)選擇證書(Certificates)及設備(Devices)三樣東西
真機測試必要條件:App ID,證書,描述文件,設備,及調試程序的Bundle Identifier保持一致」
OK,咱們開始真機調試。再此以前,我先刪除個人開發者中內心的全部Certificates, identifiers, 以及provisioning profile,爲了寫這篇教程我也真是拼了。固然devices我沒有刪除,由於這跟其餘文件沒有關係。開發者中心:
https://developer.apple.com/account/ios/profile/profileLanding.action
首先,咱們來添加App ID,它是你的app的惟一標示,App ID有四段描述分別是:name,prefix,ID,以及application service。name就是你的app的名字,prefix是一段神祕的字符,ID是com.Alfred.應用名字(這是最關鍵的,它就是你的app ID),application service是你的app須要開啓的蘋果服務。
接下來須要添加設備。把你的iphone或者iPad或者iPod等連上電腦,在iTunes裏就會看到他的UDID,複製這個字符串,在開發者中心的device裏添加一個設備,填寫這個UDID就能夠。
接下來,添加證書(certificates)。選擇certificates-development,選擇iOS app development,而後上傳已經準備好的CertificateSigningRequest.certSigningRequest文件。開發者中心會爲你生成證書文件(certificate),下載它,而後雙擊安裝。
接下來,添加描述文件(provisioning profile)。選擇provisioning profile-development,選擇iOS app development,再選擇你剛添加的App ID,選擇你剛剛添加的證書,再選擇你已經添加的設備(device)。最後編輯這個描述文件的名字。而後下載,雙擊安裝。
最後,檢查你的Xcode裏,此項目的.plist文件中bundle identifiers是否跟你的app ID一致就行了。而後run your app on your device
發佈到app store
1.首先須要發佈(distribution)證書和描述文件。
在certificates-distribution下新建一個證書,選擇App Store and Ad Hoc,而後上傳CertificateSigningRequest.certSigningRequest,生成證書文件。下載,雙擊安裝。
接下來,生成證書對應的provisioning profile(描述文件)。在provisioning profile-distribution中新建一個描述文件,選擇app store。而後選擇本身的App ID,選擇與之對應的證書。而後填寫profile name,須要與App ID的後綴,也就是你的程序名稱同樣。而後下載,雙擊安裝。
2.而後須要打包應用成ipa文件。
打包的步驟:
1)把模擬器設置成iOS Device,在product-scheme-edit scheme中,設置Run和Archive爲release。
2)把Targets ---- Build Setting ---->>> Skip Install ---->Release 設爲 No
3)點擊product-archive,應該就能success了,而後organizer-archive會本身彈出。若是彈不出就去window-organizer中本身打開。
4)若是第3步走不通,就看看project-build settings-code signing是否是識別了你的證書。沒識別就本身手動修改一下。
5)在organizer-archive中導出ipa
6)在Xcode的程序包裏有一個application loader的應用,用來上傳ipa,可是若是你是Xcode 6,建議不要用它自帶的那個3.0版的application loader,去網上下一個2.9版本的。
7)打包且上傳結束。
8)若是你以前上傳過一次,那麼此次可能會遇到version重複不能上傳的問題,能夠參考這個文章解決http://stackoverflow.com/questions/25680604/error-itms-9000-redundant-binary-upload-there-already-exists-a-binary-upload
參考:
目前最清晰的真機測試的文章:http://my.oschina.net/joanfen/blog/167730#OSC_h2_1
發佈證書的文章:http://my.oschina.net/joanfen/blog/133624ios