? ? 之前我在開發的時候,遇到證書問題,幾乎都想哭(捂臉)!現在將自己知道的和查閱到的整理了一下下,以后應該可以少抓狂一點點!
有不足的地方,希望多多指出來哦~
一、iOS開發者帳號的分類:
二、iOS發布方式:
三、iOS證書:
四、不同版本的配置(先撇開企業證書):
五、證書申請流程:這個(http://www.cnblogs.com/sk-fengzi/p/5670087.html)寫得蠻詳細的,我就稍稍簡化一下下:
? ? iOS以及Mac OS X系統,在安裝Xcode時將自動安裝AppleWWDRCA.cer這個中間證書,它實際上就是iOS(開發)證書的證書,即根證書(Apple Root Certificate),AppleWWDRCA.cer之于iOS(開發)證書則好比戶籍證之于身份證。
? ? 1.在keychainl里邊申請CSR(Cerificate Signing Request)文件、私鑰和公鑰;
? ? ? ?備注:
? ? ? ? ? ? ? ? ?1)私鑰存儲在keychain里面,蘋果通過CSR生成的證書文件則包含公鑰信
? ? ? ? ? ? ? ? ? ? ? ?息,對代碼進行簽名的時候需要:證書+私鑰,缺一不可。
? ? ? ? ? ? ? ? ? 2)團隊開發中需要公用證書,那么就需要兩個文件:*.p12文件、
? ? ? ? ? ? ? ? ? ? ? *.mobileprovision文件。*.p12文件是由秘鑰導出的,*.mobileprovision文
? ? ? ? ? ? ? ? ? ? ? ?件是項目的Provisioning Profiles文件
? ? 2.打開蘋果開發者中心——Account——Certificate——Add
? ? 3.Identifiers——APPIDs——BundleID
? ? 4.Device——UUID
? ? 5.Provisioning Profiles——Add
? ? 6.完成配置后下載2、5所配置好的文件,雙擊運行
? ? 7.在xcode里面配置好相應的code signing identity 和Provisioning Profiles
六、Xcode配置Code signing identity和Provisioning Profiles常見問題:
? ? 1.手動配置有一個deprecated 的 Provisioning Profiles和Provisioning Profiles ,哪一 個起作用?是Provisioning Profiles,以下簡稱pp文件
? ? 2.發現Automatically manamge Signing在多賬號的情況下會匹配不準確?
? ? 3.其實Developer(cer)和Distribution(pp)也是可以組合打包的,而且可以上傳到AppStore,但是應該審核會過
? ? 4.我現在沒有Developer(cer)和Developer(pp) ,也可以真機調試。。。。好吧,因為自動匹配的問題
? ? 5.Team具體是什么意思?
? ? 6.associated-domains問題:?
? ? ? ?解決方法:打開蘋果開發者中心——Identifiers——APPIDs——勾選associated-domains——重新生成Provisioning Profiles——Xcode替換Provisioning Profiles
七、常見問題解疑:
1.Apple ID賬號欠費會不會導致之前已經上架的App被下架?
? ?答:會
2.證書過期不會影響已發布的產品?未發布的產品會不會有影響?
? ? 答:證書過期后,已經上架appstore的app和已經安裝在用戶設備的app都可以正常使用。
3.證書過期導致推送會出問題,更新推送證書需要下架應用重新發布么?
? ? 答:證書可以重新生成,只要保證 developer.apple.com 中那個 APP ID 的推送證書和推送服務器上的一致就不需要下架應用。
4.證書過期,重新創建證書,可能導致之前上線的沒辦法覆蓋安裝,簽名不一樣就沒法覆蓋(估計是新建PP文件導致的)??
? ? 答:證書過期,在mac電腦上面的證書就不能使用,導致開發者不能繼續開發,因此需要重新生成證書。之后編輯舊的PP文件(只更新舊的PP文件中的證書信息),再給mac電腦安裝cer文件和pp文件,? 重新導出的ipa文件,安裝時,不需要卸載舊的app,可以直接覆蓋舊的app。
5.證書的有效期是固定的,過期了怎么辦?
? ? 答:證書過期了只能重新下載。Certificate的有效期為一年,自創建證書開始算起,而PP文件的有效期是同它關聯的證書的有效期一致,證書過期了,所有和他綁定的PP文件也一 起過期。
6.iOS的推送證書也有過期時間的限制的,過期后就需要開發者在蘋果官網上重新生成一個證書。
? ? 解決方法:
? ? ? ? 1)先revoke你的Certificate,重新生成一個新的。
? ? ? ? 2)Edit一下你的pp證書,選擇新的Certificate。
? ? ? ? 3)下載覆蓋之前的證書,就可以了。
7.又遇到了新問題,正在解決中