iOS證書配置實踐

iOS證書配置實踐

本文參考了:
iOS證書配置指南:http://dev.umeng.com/push/ios/license-configuration-guide

寫在前面:

團隊開發(fā)證書的管理:

  • 一個開發(fā)者賬戶只能申請3個發(fā)布證書,2個開發(fā)證書(一般在我們的證書界面中應該只有一個開發(fā)證書,一個發(fā)布證書,所有App和所有開發(fā)者共用一個證書即可,沒必要生成那么多的證書,造成混亂,證書一般在過期之后才會重新添加。)
  • 在團隊開發(fā)的時候,最好是一個人去管理證書,當有其他人要用的時候,可直接導出.p12證書供其他開發(fā)者使用。證書出了問題,我感覺還是相當麻煩的,
  • 而App ID在添加之后,基本上是不會改變的,除非要為App添加新的服務,這時候才要重新編輯App ID,所以App ID最好也是管理證書的人去管理App ID。
  • 添加設備這一塊就很隨意了,所有的開發(fā)者都應該有權去管理添加設備這一塊。
  • 描述文件的制作這個要區(qū)分一下是開發(fā)類型的描述文件,還是發(fā)布類型的描述文件。開發(fā)類型的描述文件應該是團隊里的每一個開發(fā)者都有權去管理的,實際上當開發(fā)類型的描述文件出現(xiàn)問題的時候,開發(fā)者可以對此描述文件重新編輯一下進行使用,這樣是不會影響其他開發(fā)者的,甚至你可以自己重新制作一個描述文件也沒什么問題。但是發(fā)布類型的描述文件,這個最好還是管理證書的那個人去管理這個描述文件。打包發(fā)布的時候如果這個描述文件出現(xiàn)變化,還是很麻煩的,而且這個描述文件對于團隊其他開發(fā)者來說也不是很常用,甚至是根本用不到這個描述文件。

總結:

App ID: 每一個應用的獨立標識 |

證書:

證書: 命名 特點 團隊管理
開發(fā)證書 iOS Development 不與App ID對應 表示擁有開發(fā)應用的資格 一般只需一個,通過導出p12文件,分發(fā)給其他電腦安裝;
生產(chǎn)證書 iOS Distribution 不與App ID對應 表示擁有發(fā)布應用的資格 一般只需一個,可以通過導出p12文件,分發(fā)給其他電腦;但最好leader一個人管理;
推送開發(fā)證書 APNs Development iOS 與App ID對應 與需要推送功能的App ID個數(shù)相同,可以通過導出p12文件,分發(fā)給其他電腦;
推送生產(chǎn)證書 Apple Push Services 與App ID對應 與需要推送功能的App ID個數(shù)相同,可以通過導出p12文件,分發(fā)給其他電腦;但最好leader一個人管理;

描述文件Provisioning Profiles:

描述文件 命名 特點 團隊管理
開發(fā)描述文件 iOS Development 對應App ID & iOS Development證書 & 設備;用于開發(fā)人員真機調試 每個開發(fā)者可以自己去生成和安裝
Ad Hoc描述文件 iOS Distribution 對應App ID & iOS Distribution證書 & 設備;用于打包ipa包給測試團隊 每個開發(fā)者可以自己去生成和安裝;但最好leader一個人管理;
發(fā)布描述文件 APNs Development iOS 對應App ID & iOS Distribution證書 (不限制設備);用于發(fā)布App到App Store 每個開發(fā)者可以自己去生成和安裝;但最好leader一個人管理;

①創(chuàng)建App ID

登錄Apple Member Center :https://developer.apple.com/membercenter,選擇**certificates,identifiers&profiles **選項,如下圖所示:

起始頁

選擇identity中的APP IDs,如下圖所示:

創(chuàng)建id

注意:創(chuàng)建Explicit App ID時,要注意此時設置的Bundle ID要與APP以后的Bundle ID一致,如下圖所示:

選擇**Push Notification **來開通Push功能,如下圖所示:

點擊下方的**register 按鈕,幾秒鐘之后下方會變成一個Done **,表示APP ID已經(jīng)創(chuàng)建完成,如下圖所示:

注意:
創(chuàng)建的APP ID要與自己項目的Bundle ID保持一致。如果已經(jīng)有APP ID,請確保自己的APP ID已經(jīng)開通了Push功能,如果沒有開通,可以點擊APP ID,在其底部有一個Edit按鈕,點擊后選中Push服務并創(chuàng)建,如下圖所示:

這里寫圖片描述

至此,APP ID創(chuàng)建完畢。

②創(chuàng)建開發(fā)證書和發(fā)布證書

CSR文件

CSRCerificate Signing Request的英文縮寫,即證書請求文件。證書申請者在申請數(shù)字證書時由CSP(加密服務提供者)在生成私鑰的同時也生成證書請求文件。證書申請者只要把CSR文件提交給證書頒發(fā)機構后,證書頒發(fā)機構使用其根證書私鑰簽名就生成了證書公鑰文件,也就是頒發(fā)給用戶的證書。

在電腦中找到鑰匙串----->鑰匙串訪問------>證書管理------>從證書頒發(fā)機構請求證書,如下圖所示:

這里寫圖片描述
這里寫圖片描述

設置完證書信息后,點擊“繼續(xù)”,然后選擇存儲位置,點擊存儲,至此,CSR文件創(chuàng)建成功。

開發(fā)證書

選擇Development(發(fā)布證書,需要選擇Distribution),如下圖所示:

之后,你將看到如下四個證書。這一步,我們選擇iOS App Development證書,如下圖所示:

這里寫圖片描述
這里寫圖片描述
這里寫圖片描述
這里寫圖片描述

choose file...中選擇本地的CertificateSigningRequest(CSR)文件,然后點擊繼續(xù),如下圖所示:

這里寫圖片描述
這里寫圖片描述

點擊Download,將證書下載到本地,雙擊下載安裝。

導出證書的p12文件:

==如果是團隊合作,可以將證書導出.p12文件,供其他開發(fā)者在各自電腦上安裝。==

這里寫圖片描述
這里寫圖片描述
這里寫圖片描述

注意:此步驟所設置的密碼將在之后會用到,且密碼只能包含大小寫(a-z,A-Z ),數(shù)字(0-9),特殊字符(.-_),其他元素將會被過濾。

至此,P12證書導出完畢。

將.p12文件收到后,雙擊該文件,會出現(xiàn)使用文件的密碼輸入框,輸入該.p12文件的使用密碼(就是生成的時候設的,不知道就問給你該文件的人),不是本機設備密碼。這是配置該文件在本地。然后將開發(fā)者賬號對應的開發(fā)證書和發(fā)布證書都可以download使用了。

發(fā)布證書

iOS Certificates下選擇All,如下圖所示:

這里寫圖片描述

Production下選擇App Store and Ad Hoc,如下圖所示:

這里寫圖片描述
這里寫圖片描述

點擊choose file選擇CSR文件,如下圖所示:

這里寫圖片描述

生成證書并點擊Download,將證書下載到本地,雙擊下載安裝。

==如果是團隊合作,可以將證書導出.p12文件,供其他開發(fā)者在各自電腦上安裝。==

③添加測試設備

測試推送需要添加測試設備,添加方法如下所示:

PS:Xcode8 開始, 會將在真機運行時設備自動加入測試設備。

這里寫圖片描述
這里寫圖片描述
這里寫圖片描述
這里寫圖片描述

④創(chuàng)建Provisioning Profiles文件

  • iOS App Development 開發(fā)描述文件 用于開發(fā)人員真機調試 限制設備
  • App Store 發(fā)布描述文件 用于發(fā)布App到App Store 不限制設備
  • Ad Hoc 測試描述文件 用于打包給測試團隊 限制設備

開發(fā)Provisioning Profiles

選擇Development,創(chuàng)建開發(fā)環(huán)境的Provisioning Profiles(如果是發(fā)布上線,需要選擇Distribution),如下圖所示:

這里寫圖片描述
這里寫圖片描述

創(chuàng)建新的Provisioning Profiles,并選擇之前生成好的App ID。如下圖所示:

這里寫圖片描述

選中創(chuàng)建的證書:開發(fā)證書

這里寫圖片描述

選中測試設備:

這里寫圖片描述
這里寫圖片描述

把創(chuàng)建的Provisioning Profiles下載下來(文件名:umengpushtestdemo.mobileprovision)以后雙擊安裝。

這里寫圖片描述

測試(Ad Hoc):Provisioning Profiles

Provisioning Profile下選擇All,如下圖所示:

這里寫圖片描述

Distribution下選擇Ad Hoc,如下圖所示:

Select App ID下選擇Ad Hoc,如下圖所示:

這里寫圖片描述

選擇證書,如下圖所示:

這里寫圖片描述

選擇指定設備,如下圖所示:

這里寫圖片描述

給profile文件起名,如圖中起名為Distribution-Ad-Hoc:

這里寫圖片描述

把創(chuàng)建的Provisioning Profiles(文件名:Distribution-Ad-Hoc)以后雙擊證書。

這里寫圖片描述

發(fā)布Provisioning Profiles

Distribution下選擇App Store,如下圖所示:

==不同時開發(fā)和Ad Hoc描述需要選擇設備,App Store描述不需要選擇設備。==

5.創(chuàng)建推送證書

一般App都具有推送功能,推送證書是必須的。推送證書分為開發(fā)環(huán)境和生產(chǎn)環(huán)境:

  • 開發(fā)推送證書
  • 發(fā)布推送證書

開發(fā)推送證書

選擇Apple Push Notification service SSL(Sandbox)

這里寫圖片描述

選中APP ID后,點擊continue,直到上傳CRS文件,如下圖所示:

推送證書是對應APP ID的。這與開發(fā)證書是有區(qū)別的。

這里寫圖片描述
這里寫圖片描述
這里寫圖片描述
這里寫圖片描述

點擊Download,將證書下載到本地后,雙擊下載的開發(fā)環(huán)境推送證書(文件名為:aps_development.cer,可以自己更改命名),就可以在鑰匙串訪問中的我的證書中找到。

==如果是團隊合作,可以將證書導出.p12文件,供其他開發(fā)者在各自電腦上安裝。==

發(fā)布推送證書

推送證書分為開發(fā)環(huán)境和生產(chǎn)環(huán)境,如果需要生成生產(chǎn)環(huán)境的推送證書請選擇: Apple Push Notification service SSL (Sandbox&Production),如下圖所示:

這里寫圖片描述

==如果是團隊合作,可以將證書導出.p12文件,供其他開發(fā)者在各自電腦上安裝。==

參考:
iOS證書配置指南:http://dev.umeng.com/push/ios/license-configuration-guide

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容