蘋果所有常用證書,appID,Provisioning Profiles配置說明及制作圖文教程
2016.07.15 14:35*字數(shù) 3597閱讀 12843評論 1喜歡 22
概述:
蘋果的證書繁鎖復雜,制作管理相當麻煩,今天決定重置一個游戲項目中的所有證書,做了這么多次還是感覺很糾結(jié),索性直接記錄下來,日后你我他查閱都方便;
首先得描述一下各個證書的定位,作用,這樣在制作的時候心中有譜,對整個流程的把握也會準確一些;
1、開發(fā)者證書(分為開發(fā)和發(fā)布兩種,類型為iOSDevelopment,ios Distribution),這個是最基礎的,不論是真機調(diào)試,還是上傳到appstore都是需要的,是一個基證書,用來證明自己開發(fā)者身份的;
2、appID,這是每一個應用的獨立標識,在設置項中可以配置該應用的權(quán)限,比如是否用到了PassBook,GameCenter,以及更常見的push服務,如果選中了push服務,那么就可以創(chuàng)建生成下面第3條所提到的推送證書,所以,在所有和推送相關(guān)的配置中,首先要做的就是先開通支持推送服務的appID;
3、推送證書(分為開發(fā)和發(fā)布兩種,類型分別為APNs Development ios,APNs Distribution ios),該證書在appID配置中創(chuàng)建生成,和開發(fā)者證書一樣,安裝到開發(fā)電腦上;
4、Provisioning
Profiles,這個東西是很有蘋果特色的一個東西,我一般稱之為PP文件,該文件將appID,開發(fā)者證書,硬件Device綁定到一塊兒,在開發(fā)者
中心配置好后可以添加到Xcode上,也可以直接在Xcode上連接開發(fā)者中心生成,真機調(diào)試時需要在PP文件中添加真機的udid;是真機調(diào)試和必架必
備之珍品;
平常我們的制作流程一般都是按以上序列進行,先利用開發(fā)者帳號登陸開發(fā)者中心,創(chuàng)建開發(fā)者證書,appID,在appID中開通推送服務,在開通推送服務的選項下面創(chuàng)建推送證書(服務器端的推送證書見下文),之后在PP文件中綁定所有的證書id,添加調(diào)試真機等;
具體操作流程如下:
第一步:申請“開發(fā)證書”
1、開發(fā)者證書的制作,首先登陸到開發(fā)者中心,找到證書配置的版塊,猛戳進入,點進證書,會顯示如下界面,點擊右上角的加號
會出現(xiàn)以下界面,該操作重復兩次,分別創(chuàng)建開發(fā)測試證書和發(fā)布證書,開發(fā)測試證書用于真機調(diào)試,發(fā)布證書用于提交到appStore,我們以開發(fā)測試證書為例,選擇第一個紅框中的內(nèi)容;
然后下一步,會提示創(chuàng)建CSR文件,也就是證書簽名請求文件,會有很詳細的操作說明,如果英文不太好,可以參考下圖;
(1) ? ? ? 點擊鑰匙圖標
(2) ? 在菜單欄中依次選擇:鑰匙串訪問?偏好設置?證書選項卡,下面兩項全部選關(guān)閉
(3) ?生成證書請求:鑰匙串訪問?證書助理?從證書頒發(fā)機構(gòu)請求證書
(4) ? ?輸入兩個電子郵件地址和常用名稱。電子郵件地址是你注冊AppleID。
a)?? 常用名稱輸入你在蘋果網(wǎng)站注冊的名稱,其它名稱沒試過,不知道行不行。
b)?? 選擇“存儲到磁盤”。保存后的名稱應該為:CertificateSigningRequest.certSigningRequest
之后將該CSR文件保存到一處;
c)?? 保存到磁盤后在你的鑰匙串訪問窗口應該會出兩個密鑰,一個公鑰密鑰,一個專用密鑰,紅色部分就是你在上面輸入的常用名。
備注:CSR文件盡量每個證書都制作一次,將常用名稱區(qū)分開來,因為該常用名稱是證書中的密鑰的名字;
之后在開發(fā)者中心將該CSR文件提交;
(5) ? ? ? ? 生成Certificates證書
提交上去后就會生成一個cer證書,如圖所示,有效期為一年;
利用同樣的方法配置一下Distribution發(fā)布證書,下載保存,雙擊安裝;在鑰題串登陸證書中可以查看,其中專用密鑰的名字即為CSR請求文件中的常用名稱;
IDs
2、以上開發(fā)者證書的配置完成了,下面我們來配置appID和推送證書;
選擇 “Identifiers”的 “App IDs”,點擊“+”
出現(xiàn)以下界面:
App ID Description 是一個App ID的描述,就是一個名字,這個名字可以隨便取
App ID Prefix 蘋果已經(jīng)幫我們填了,不需要我們填,可以看出,它是一個團隊的ID
下一步,選擇App ID
Suffix
App ID Suffix 有兩個選項:
Explicit App ID :顧名思義,這里要填一個明確的 App ID,
什么意思呢?可以這么來解釋:我們做項目時的Bundle Identifier (Bundle ID)是用來標示我們的app的。我們的App ID也是用來標示我們的app的。這兩個有什么聯(lián)系呢?Explicit App ID 就是要我們確定一個唯一的Bundle ID,用來標示我們的 app,使它有一個固定的身份。可以發(fā)現(xiàn),當提交應用到蘋果時,如果我們一開始沒寫Explicit App ID,蘋果會自動幫我們生成一個與我們發(fā)布時填的一樣的Bundle ID 到我們的App ID中。
填寫Explicit App ID 的格式為:com.company.appName
Wildcard App ID:顧名思義,這里要填一個通配符的 App ID 。意思就是,我們只需要填一個在所有應用都能試用的 App ID 就好了。
填寫WildcardApp ID 的格式為:com.company.*
申請真機調(diào)試的時候,不是為了某一個應用去調(diào)試,而是為了所有的應用去調(diào)試,必須能適應每一個app,所以我們選擇Wildcard
App ID。
com.company.* 的company 一般寫公司的名字,也可以按需要寫
可以發(fā)現(xiàn),選擇Explicit App ID 會比Wildcard
App ID 多幾個服務選項可以選,不過我們是真機調(diào)試,所以無所謂,將能選的勾上,選擇“Continue”就好。
看到如下界面,點擊“Submit”后就可以生成App ID了
第三步:申請設備
如圖,點擊“+”,一個99美元賬號只能申請100個設備。
Name 自己取一個設備的名字,UDID約等于設備的身份證,可以在xcode中查看
查看UDID
打開xcode,選擇“Windows” 的“organizer”:
選擇設備看到 “identifier”,這個就是我們設備的 UDID,將其復制,可以填入上上圖顯示的 UDID中。
當你的機子第一次用于開發(fā)時,可以看到,顯示的燈是“灰色”的,可以點擊“use for developer” 來作為開發(fā)機。點擊了“use for developer”后,可以發(fā)現(xiàn)你的燈變成了黃色的了。
如果一個手機本來就是開發(fā)機(一個手機可以安裝多個開發(fā)用的描述文件)或者越獄的手機,那么它剛插進去就是綠燈。但是綠燈并不代表就能用,必須安裝相適應的描述文件。如圖就是一個沒有安裝相應描述文件的開發(fā)機。
填好 name 和 UDID后,點擊continue 就可以看到如下界面,點擊“Register”就可以在蘋果上登記了。
4、PP文件的制作
如圖點擊“+”
選擇 ? ?“iOS App Developer”,然后“Continue”
這里選擇我們剛剛生成的 App ID,選好后,點擊“Continue”
這里選擇一個開發(fā)證書,有兩點要注意:
這個證書是我們剛剛自己在本機(當前電腦)與蘋果開發(fā)者網(wǎng)站生成的 開發(fā)證書 “Development certificate”
如果不是剛生成的,這個證書必須在本地的mac的鑰匙串中存在(帶密鑰的證書,不帶密鑰的依然無效)
如果不想自己在重新生成證書,用別人生成的證書,可以從別人的電腦中導出p12文件,參見最下方的"關(guān)于.p12證書".
選好證書以后,點擊“Continue”
選擇設備,設備可以選擇全部設備,也可以按需選擇你需要的設備:
這里給我們的描述文件取一個名字,這個名字在以后的xcode中是看得到的,所以可以取一個好辨認的名字。取好名字后,選擇“Generate”生成描述文件。
生成好描述文件后,選擇“Download”,雙擊進行安裝(安裝后在xcode中可以查看)
安裝成功后,以前沒作為開發(fā)機的手機會變成綠色的(以前就是開發(fā)機和越獄的手機一直是綠色的,但是不重新申請符合證書的真機調(diào)試任然是不能真機調(diào)試的)
點擊“Provisioning
Profiles” 看到 “Valid profile” 就是成功安裝的意思。
如果沒有安裝成功,一般是證書或者描述文件的問題,看看證書是不是從自己的機子上生成的,描述文件的配置信息(是否和你的本機存在的帶秘鑰的證書相匹配,你添加的設備是否包含你現(xiàn)在選擇調(diào)試的設備)等,如圖第一個警告是因為沒有證書與描述文件相匹配出現(xiàn)的
配置好后,還不是綠燈,則考慮問題:
設備版本高于XCode所能支持的版本,如XCode4.6.3,能支持的最高版本未iOS6.1,如果你的設備系統(tǒng)大于等于iOS7以上,此時需要 ? 更新至XCode5; ?再如:XCode5 不支持ios7.1,如果想開發(fā)ios7.1,必須將xcode5 升級到 xcode5.1以上版本;
例如:
在真機調(diào)試時,不要忘記設置這兩個,否則調(diào)試失敗:
這個必須填:之前寫Wildcard
App ID 的內(nèi)容. app的名字
設置好這兩個之后再點擊運行。
關(guān)于.p12證書
當我們用大于三個mac設備開發(fā)應用
時,想要申請新的證書,如果在我們的證書里,包含了3個發(fā)布證書,2個開發(fā)證書,可以發(fā)現(xiàn)再也申請不了開發(fā)證書和發(fā)布證書了(一般在我們的證書界面中應該
只有一個開發(fā)證書,一個發(fā)布證書,沒必要生成那么多的證書,證書一般在過期之后才會重新添加。)
如圖:
這時候,再點擊“+”時,就會發(fā)現(xiàn)點擊不了開發(fā)和發(fā)布證書,也就是添加不了開發(fā)證書和發(fā)布證書了:
將以前的證書“revoke”掉,如圖:
然后重新生成一個新的證書。
這種方法是可以的,但是會造成相應的Provisioning Profiles失效,這個可大可小。如果只有你一個人則問題不大,如果是一個團隊大家都在用,你把這個證書刪除了,會導致別人的描述文件失效,這意味著別人不能發(fā)布應用了(還可以開發(fā)),這可是大問題,所以不提倡這種做法。
我們的每一個證書都可以生成一個.p12文件,這個文件是一個加密的文件,只要知道其密碼,就可以供給所有的mac設備使用,使設備不需要在蘋果開發(fā)者網(wǎng)站重新申請開發(fā)和發(fā)布證書,就能使用。
注意:一般.p12文件是給與別人使用的,本機必須已經(jīng)有一個帶秘鑰的證書才可以生成.p12文件,如圖:
打開鑰匙串,選擇我們需要的證書,右擊,選擇“導出“iPhone Distribition:```”:
為.p12文件填一個名字,點擊存儲:
填一個“密碼”,“驗證”和密碼相同:
點擊好,在桌面上就形成了一個.p12文件了:
該證書導出的“.p12”文件。
蘋果開發(fā)者中的與“證書”對應的“描述文件”
如果需要用于開發(fā)的,那么需要這兩個文件:
.p12文件本身就是一個加密的證書,所以用這兩個文件就可以讓其他mac設備使用了:
拿到這兩個文件后,依次雙擊“證書”,“.p12“文件(需要輸入密碼,密碼就是當時生成.p12時設定的密碼,),作用是加入鑰匙串中,使我們的電腦具備開發(fā)的證明,”描述文件“(作用是置于xcode中,讓xcode知道我們開發(fā)的合法性),添加完后就可以使用了。
原文地址:http://www.lxweimin.com/p/be89a34e0034