1. ios製作推送證書 java後台怎麼需要兩個p12文件
1. 下載.cer文件到別的機器。就是在IDP上的那個。
2. 從發送申請文件(certificate Request,後綴名為certSigningRequest)的機器上把證書對應的private key(.p12文件)導出,密碼自己定,要記住,後面導入的時候要用。
3. 在你需要的機器上安裝證書(.cer),導入私鑰文件(.p12)。安裝對應App的provisioning profile。
4. Over,你可以用其他機器開發了。
註:必須得從申請機器上導出private key.到其他機器上
一、成員介紹
1.Certification(證書)
證書是對電腦開發資格的認證,每個開發者帳號有一套,分為兩種:
1)Developer Certification(開發證書)
安裝在電腦上提供許可權:開發人員通過設備進行真機測試。
可以生成副本供多台電腦安裝;
2)Distribution Certification(發布證書)
安裝在電腦上提供發布iOS程序的許可權:開發人員可以製做測試版和發布版的程序。
不可生成副本,僅有配置該證書的電腦才可使用;(副本製做介紹在下面Keychain中介紹)
2.Provisioning Profile(授權文件)
授權文件是對設備如iPod Touch、iPad、iPhone的授權,文件內記錄的是設備的UDID和程序的App Id,即使被授權的設備可以安裝或調試Bundle identifier與授權文件中記錄的App Id對應的程序。
開發者帳號在創建授權文件時候會選擇App Id,(開發者帳號下App Id中添加,單選)和UDID(開發者帳號下Devices中添加最多100個,多選)。
授權文件分為兩種,對應相應的證書使用:
1)Developer Provisioning Profile(開發授權文件)
在裝有開發證書或副本的電腦上使用,開發人員選擇該授權文件通過電腦將程序安裝到授權文件記錄的設備中,即可進行真機測試。
注意:確保電腦有許可權真機調試,即安裝了開發證書或副本;在開發工具中程序的Bundle identifier和選中使用的授權文件的App Id要一致;連接調試的設備的UDID在選中的授權文件中有記錄。
2)Distribution Provisioning Profile(發布授權文件)
在裝有發布證書的電腦上(即配置證書的電腦,只有一台)製做測試版和發布版的程序。
發布版就是發布到App Store上的程序文件,開發者帳號創建授權文件時選擇store選項,選擇App Id,無需選擇UDID;
測試版就是在發布之前交給測試人員可同步到設備上的程序文件,開發者帳號創建授權文件時選擇AdHoc,選擇App Id和UDID;只有選中的UDID對應的設備才可能安裝上通過該授權文件製做的程序。
3.Keychain(開發密鑰)
安裝證書成功的情況下證書下都會生成Keychain,上面提到的證書副本就是通過配置證書的電腦導出Keychain(就是.p12文件)安裝到其他機子上,讓其他機子得到證書對應的許可權。Developer Certification就可以製做副本Keychain分發到其他電腦上安裝,使其可以進行真機測試。
注意:Distribution Certification只有配置證書的電腦才可使用,因此即使導出導出Keychain安裝到其他電腦上,其他電腦也不可能具有證書的許可權。
2. 更換極光推送證書後 配置文件要改么
推送證書不需要變化,只要你伺服器上的證書不發生變化,在App轉讓之後推送就是完全正常的。推送是根據Bundle ID來的,之後的開發推送證書可以替換更新,不會影響原來的,但要保證Bundle ID不會發生變化。
3. 配置推送證書兩個環境是要一個csr文件嗎
在創建配置文件的時候不能選擇推送SSL證書的 只能選擇開發者或者Distribution certificate 往伺服器上傳SSL之後,他們可以提供給你推送服務;解析,arban airship,等。
4. 如何在app裡面部署sdk和appid
首先得描述一下各個證書的定位,作用,這樣在製作的時候心中有譜,對整個流程的把握也會准確一些;
1、開發者證書(分為開發和發布兩種,類型為ios Development,ios Distribution),這個是最基礎的,不論是真機調試,還是上傳到appstore都是需要的,是一個基證書,用來證明自己開發者身份的;
2、appID,這是每一個應用的獨立標識,在設置項中可以配置該應用的許可權,比如是否用到了PassBook,GameCenter,以及更常見的push服務,如果選中了push服務,那麼就可以創建生成下面第3條所提到的推送證書,所以,在所有和推送相關的配置中,首先要做的就是先開通支持推送服務的appID;
3、推送證書(分為開發和發布兩種,類型分別為APNs Development ios,APNs Distribution ios),該證書在appID配置中創建生成,和開發者證書一樣,安裝到開發電腦上;
4、Provisioning Profiles,這個東西是很有蘋果特色的一個東西,我一般稱之為PP文件,該文件將appID,開發者證書,硬體Device綁定到一塊兒,在開發者中心配置好後可以添加到Xcode上,也可以直接在Xcode上連接開發者中心生成,真機調試時需要在PP文件中添加真機的udid;是真機調試和必架必備之珍品;
平常我們的製作流程一般都是按以上序列進行,先利用開發者帳號登陸開發者中心,創建開發者證書,appID,在appID中開通推送服務,在開通推送服務的選項下面創建推送證書(伺服器端的推送證書見下文),之後在PP文件中綁定所有的證書id,添加調試真機等;
具體操作流程如下:
1、開發者證書的製作,首先登陸到開發者中心,找到證書配置的版塊,猛戳進入,點進證書,會顯示如下界面,點擊右上角的加號
會出現以下界面,該操作重復兩次,分別創建開發測試證書和發布證書,開發測試證書用於真機調試,發布證書用於提交到appStore,我們以開發測試證書為例,選擇第一個紅框中的內容;
然後下一步,會提示創建CSR文件,也就是證書簽名請求文件,會有很詳細的操作說明,如果英文不太好,可以參考下圖;
之後將該CSR文件保存到一處;
備註:CSR文件盡量每個證書都製作一次,將常用名稱區分開來,因為該常用名稱是證書中的密鑰的名字;
之後在開發者中心將該CSR文件提交;
提交上去後就會生成一個cer證書, 有效期為一年;
利用同樣的方法配置一下Distribution發布證書,下載保存,雙擊安裝;在鑰題串登陸證書中可以查看,其中專用密鑰的名字即為CSR請求文件中的常用名稱;
2、以上開發者證書的配置完成了,下面我們來配置appID和推送證書;在左邊欄中選擇appID,勾選右邊的push可選項,為該appID所對應的應用添加推送功能,下面會看到創建證書的按鈕,分別為開發證書和發布證書,下面的流程就和上述1中創建證書一樣了,都是先建立證書請求文件,然後提交生成就行了,需要注意的是,雖然在左邊欄證書欄中也可以直接創建推送證書,但是還是建議在appID中,勾選了push服務後在此處創建,這樣會避免因為忘了開通push服務而導致推送不可用的情況發生;
證書創建完成後,下載保存,雙擊安裝即可;
3、最後我們來進行PP文件的製作
該流程進行兩次,分別創建開發測試用PP文件和發布PP文件,前者用於真機測試,後者用於提交發布;Ad Hoc格式一般用於企業帳號,此處我們忽略;
選擇後提交
會自動檢測匹配appID,另外下拉項中還可以選擇wildCard格式,該格式為自動生成,使用*通配符,適用於批量的,沒有推送,PassCard等服務的應用;我們選擇我們剛剛創建的appID,之後下一步選擇證書;
繼續,這里有一個區別,因為PP文件的開發測試版需要真機調試,所以我們需要綁定真機,這里因為之前我添加過一些設備,所以這里就可以直接全選添加,如果沒有的話,需要將真機的udid復制出來在此添加,在發布PP文件中,是沒有這一步的;
之後就是輸入一個PP文件的名字了,然後生成,下載保存,雙擊添加到Xcode庫中,這樣在真機調試或者發布時,就可以分別有不同的PP文件與其對應;
到目前為止,客戶端開發和上架所需要的證書文件配置都已經配齊了,天色已晚,明天再配置服務端所用到的推送證書吧,到時候另起一章,將ios詭異的推送流程也捋一捋,本來想寫到一篇里的,沒想到整了這么長,下班回家開黑去嘍!
5. java後台極光推送最新版 ios 怎麼指定證書環境
創建應用程序ID
登陸 iOS Dev Center 選擇進入iOS Provisioning Portal。
在 iOS Provisioning Portal中,點擊App IDs進入App ID列表。
創建 App ID,如果 ID 已經存在可以直接跳過此步驟
為 App 開啟 Push Notification 功能。如果是已經創建的 App ID 也可以通過設置開啟 Push Notification 功能。
根據實際情況完善 App ID 信息並提交,注意此處需要指定具體的 Bundle ID 不要使用通配符。
配置和下載證書
如果你之前沒有創建過 Push 證書或者是要重新創建一個新的,請在證書列表下面新建。
新建證書需要注意選擇證書種類(開發證書用於開發和調試使用,生產證書用於 App Store 發布)
點擊 Continue 後選擇證書對應的應用ID,然後繼續會出現「About Creating a Certificate Signing Request (CSR)」。
根據它的說明創建打開KeychainAccess 創建 Certificate Signing Request。
填寫「User Email Address」和「Common Name」 後選擇 Saved to disk 進行保存 。
繼續返回Apple developer 網站點擊 Continue ,上傳剛剛生成的 .certSigningRequest 文件生成 APNs Push Certificate。
下載並雙擊打開證書,證書打開時會啟動「鑰匙串訪問」工具。
在「鑰匙串訪問」中你的證書會顯示在「我的證書」中,注意選擇「My Certificates」 和"login"
導出 .p12 證書文件
在「鑰匙串訪問」中,選擇剛剛加進來的證書,選擇右鍵菜單中的「導出「...」」。
注意要選「login」和「My Certificates」 導出證書時要選中證書文件,不要展開private key。
將文件保存為Personal Information Exchange (.p12)格式。
保存p12文件時,可以為其設置密碼,也可以讓密碼為空。
上傳證書
在 JPush 管理 Portal 上,針對某應用程序,上傳上面步驟得到 .p12 證書文件。這是 iOS SDK 能夠接收到 JPush 推送消息的必要步驟。
6. ios 個人開發者可以申請推送證書嗎
方法/步驟
1
首先你想創建推送證書和以前你做真機測試證書一樣,需要實現准備一個99$的付費賬號.然後登陸蘋果開發者網站.
2
登陸以後你能看到這個界面然後選擇我圈中的那個選項Member Center 轉到登陸界面.
3
在這里你可以輸入你的付費賬號和密碼.然後點擊Single In.
4
然後選擇證書申請的頁面.
5
先點擊APP ID 的創建界面(Identifiers).
6
進入到APP ID 的創建頁面後點擊右上角的+創建新的APP ID .
7
因為今天要做的是推送證書需要在創建APP ID 的時候勾選Push Notifications這個選項,完成這幾步後直接點擊最下方的Continue
8
在上述操作完成後檢查看Push Notifications這個選項是不是在等待配置狀態,如果已經完成點擊下方的Submint
9
現在我們的APP ID 已經創建完成現在可以去製作我們的推送證書了點擊我們的左邊欄里的證書選項Development.
10
還是點擊左上角的+創建我們的推送證書.
在這里我們可以看到兩個推送證書一個是真機測試下的證書,另外一個是上線的證書,我們現在選擇真機狀態下的證書.
選在好後直接點擊下方的Continue.
點擊下一步後就到了選擇我們剛剛創建的APP ID ,這里尋找是根據我們剛寫的Boundle ID來尋找的並不是根據APP ID 的名字.
在找到我們創建的APP ID 後點擊下方的Continue,在點擊後我們可以看到一個類似下方的頁面,這是一個提示界面直接再次點擊下方的Continue.
在點擊下一步後可以看到一個需要上傳CSR文件的地方.
創建CSR文件是需要訪問我們電腦上的鑰匙串來生成的,我們先來打開我們電腦上的鑰匙串.
在鑰匙串中我們點擊我們電腦左上角的鑰匙串選項,在選項中選在證書助理選項中的從證書頒發機構請求證書選項.
填寫你的個人的蘋果郵箱賬號和你的個人信息,記得選擇存儲到磁碟,填寫完成後選擇存儲的位置後直接點擊完成.
在CSR文件創建完成後選擇剛才我們創建證書的界面點擊選擇文件,選擇完成後點擊創建.
再點擊創建後我們的推送證書就創建完成了,然後我們選擇Download下載後雙擊安裝就完成了.
7. 如何配置Apple推送證書 push證書
1.登錄蘋果開發者賬戶
2.在左側找到Certificats
3.找到我們要配置push功能的AppID 找到底部的Edit按鈕 如何創建專AppID可參考 26創建AppID Apple開發屬 2016最新Apple開發
4.進入AppID設置 找到Push Notifications 這里有2種推送證書 d...
5.繼續選擇Continue
6.上傳自己的csr文件
繼續Continue
7.到這里我們的推送證書就創建好了
選擇Download 就可以將證書下載下來了
8.再次回到AppID的Edit畫面
可以看到push notificates狀態已經改變了
9.在push notificates這里就會顯示出我們已經創建過的推送證書
選擇DownLoad 還可以下載下來
8. xcode 調試和發布證書的區別
關於證書
1.首先通過鑰匙串訪問——證書助理——從證書頒發機構請求證書——填寫證書信息(郵箱,常用名稱,存儲到磁碟)——存儲為(自定義名稱.certSigningReuqest,簡稱CSR文件,只是為了提交到蘋果開發者賬號中,然後就沒用了)到本地
2.蘋果開發者賬號中,創建證書(Development和Proction)——上傳CSR文件——下載證書運行 ( xxx.cer文件)
注意:只有在當前電腦中生成本地生成證書,上傳到蘋果開發賬號,然後下載cer文件運行後,鑰匙串中才有證書以及對應的秘鑰
如果開發者B,登錄開發者賬號,下載證書(cer文件)運行,只有證書沒有秘鑰,是不能正常使用的
所以如果有新同事加入到開發組的時候,應該從本地鑰匙串中選擇證書,導出p12文件(包含證書和秘鑰)給同事。另外可以給同事一份Provisioning Profiles文件(配置文件),用於本地開發識別測試設備
導出p12文件:鑰匙串——選擇證書——右鍵導出——存儲為——設置p12文件密碼
(發給同事後,雙擊p12文件,輸入密碼,本地安裝證書成功)
需要強調一點,證書和項目關系其實並不大,證書一般有效期只有一年,當證書過期後,只需要重新生成一份證書,上傳到開發者賬號就行,同時因為原有證書過期,需要重新生成Provisioning Profiles文件。然後給同事們最新的p12文件和Provisioning Profiles文件就行
所以開發者賬號中的證書,配置文件是可以放心操作的(比如誤刪了,或者找不到證書秘鑰了)
Xcode中添加蘋果開發者賬號
Xcode工具欄——Xcode——Preferences——Accounts—— 左下角 Add Apple ID——輸入蘋果賬號,密碼
在項目的target——general——team中可以選擇項目對應的開發者賬號
(當bulid的新設備未在開發者賬號的devices添加devicetoken的時候,xcode會進行提示無法識別設備,可以在xcode中fix issue,xcode會自動在開發者賬號中,創建一個新的針對這個設備的Provisioning Profiles配置文件,然後安裝到本地,唯一的不好就是開發者賬號的配置文件下會有很多零散的配置文件)
關於App的發布
修改項目的version,以及項目的版本debug為release
(debug改為release後需要進行測試,一些第三方類庫可能release版會有一些不兼容)
Proct——Scheme——Edit Scheme 修改 Run/Test/Analyze/Archive 的build configuration (發布的時候,只需要Archive就可以了)
蘋果開發者中心——iTunes Connect——我的APP——創建/選擇應用——填寫基本修改/添加新版本(構建版本)
發布驗證
Proct——Desination——選擇iOS Device
Proct——Archive——右側點擊Validate——選擇證書——validate——等待——Validate Successful——右側點擊Submit to App Store(提交構建版本)——Submission Successful
蘋果開發者中心——iTunes Connect——我的APP——選擇應用——提交構建版本成功——選擇自動發布/手動發布——提交審核
等待審核
本文永久地址:http://blog.it985.com/11387.html
首先得描述一下各個證書的定位,作用,這樣在製作的時候心中有譜,對整個流程的把握也會准確一些;
1、開發者證書(分為開發和發布兩種,類型為ios Development,ios Distribution),這個是最基礎的,不論是真機調試,還是上傳到appstore都是需要的,是一個基證書,用來證明自己開發者身份的;
2、appID,這是每一個應用的獨立標識,在設置項中可以配置該應用的許可權,比如是否用到了PassBook,GameCenter,以及更常見的push服務,如果選中了push服務,那麼就可以創建生成下面第3條所提到的推送證書,所以,在所有和推送相關的配置中,首先要做的就是先開通支持推送服務的appID;
3、推送證書(分為開發和發布兩種,類型分別為APNs Development ios,APNs Distribution ios),該證書在appID配置中創建生成,和開發者證書一樣,安裝到開發電腦上;
4、Provisioning Profiles,這個東西是很有蘋果特色的一個東西,我一般稱之為PP文件,該文件將appID,開發者證書,硬體Device綁定到一塊兒,在開發者中心配置好後可以添加到Xcode上,也可以直接在Xcode上連接開發者中心生成,真機調試時需要在PP文件中添加真機的udid;是真機調試和上架必備之珍品;
平常我們的製作流程一般都是按以上序列進行,先利用開發者帳號登陸開發者中心,創建開發者證書,appID,在appID中開通推送服務,在開通推送服務的選項下面創建推送證書(伺服器端的推送證書見下文),之後在PP文件中綁定所有的證書id,添加調試真機等;
具體操作流程如下:
1、開發者證書的製作,首先登陸到開發者中心,找到證書配置的版塊,猛戳進入,點進證書,會顯示如下界面,點擊右上角的加號
會出現以下界面,該操作重復兩次,分別創建開發測試證書和發布證書,開發測試證書用於真機調試,發布證書用於提交到appStore,我們以開發測試證書為例,選擇第一個紅框中的內容;
然後下一步,會提示創建CSR文件,也就是證書簽名請求文件,會有很詳細的操作說明,如果英文不太好,可以參考下圖;
之後將該CSR文件保存到一處;
備註:CSR文件盡量每個證書都製作一次,將常用名稱區分開來,因為該常用名稱是證書中的密鑰的名字;
之後在開發者中心將該CSR文件提交;
提交上去後就會生成一個cer證書,如圖所示,有效期為一年;
利用同樣的方法配置一下Distribution發布證書,下載保存,雙擊安裝;在鑰題串登陸證書中可以查看,其中專用密鑰的名字即為CSR請求文件中的常用名稱;
2、以上開發者證書的配置完成了,下面我們來配置appID和推送證書;在左邊欄中選擇appID,勾選右邊的push可選項,為該appID所對應的應用添加推送功能,下面會看到創建證書的按鈕,分別為開發證書和發布證書,下面的流程就和上述1中創建證書一樣了,都是先建立證書請求文件,然後提交生成就行了,需要注意的是,雖然在左邊欄證書欄中也可以直接創建推送證書,但是還是建議在appID中,勾選了push服務後在此處創建,這樣會避免因為忘了開通push服務而導致推送不可用的情況發生;
證書創建完成後,下載保存,雙擊安裝即可;
3、最後我們來進行PP文件的製作
該流程進行兩次,分別創建開發測試用PP文件和發布PP文件,前者用於真機測試,後者用於提交發布;Ad Hoc格式一般用於企業帳號,此處我們忽略;
選擇後提交
會自動檢測匹配appID,另外下拉項中還可以選擇wildCard格式,該格式為自動生成,使用*通配符,適用於批量的,沒有推送,PassCard等服務的應用;我們選擇我們剛剛創建的appID,之後下一步選擇證書;
繼續,這里有一個區別,因為PP文件的開發測試版需要真機調試,所以我們需要綁定真機,這里因為之前我添加過一些設備,所以這里就可以直接全選添加,如果沒有的話,需要將真機的udid復制出來在此添加,在發布PP文件中,是沒有這一步的;
之後就是輸入一個PP文件的名字了,然後生成,下載保存,雙擊添加到Xcode庫中,這樣在真機調試或者發布時,就可以分別有不同的PP文件與其對應;
添加到Xcode中的效果如下:
到目前為止,客戶端開發和上架所需要的證書文件配置都已經配齊了,天色已晚,明天再配置服務端所用到的推送證書吧,到時候另起一章,將ios詭異的推送流程也捋一捋,本來想寫到一篇里的,沒想到整了這么長,下班回家開黑去嘍!
本文永久地址:http://blog.it985.com/11383.html
1.概念介紹
如果你擁有一個開發者賬戶的話,在iOS Dev Center打開Certificates, Indentifiers & Profiles,你就可以看到如下的列表:
Profile Portal改版有一段時間了,改版之後的結構比以前更清晰明了,易於理解和管理。
上面的列表就包含了開發、調試和發布iOS應用程序所需的所有內容:Certificates、Identifiers、Devices、Provisioning Profiles。下面將一一解釋這幾個東東。
Certificate
證書是用來給應用程序簽名的,只有經過簽名的應用程序才能保證他的來源是可信任的,並且代碼是完整的, 未經修改的。在Xcode Build Setting的Code Signing Identity中,你可以設置用於為代碼簽名的證書。
眾所周知,我們申請一個Certificate之前,需要先申請一個Certificate Signing Request (CSR) 文件,而這個過程中實際上是生成了一對公鑰和私鑰,保存在你Mac的Keychain中。代碼簽名正是使用這種基於非對稱秘鑰的加密方式,用私鑰進行簽名,用公鑰進行驗證。如下圖所示,在你Mac的keychain的login中存儲著相關的公鑰和私鑰,而證書中包含了公鑰。你只能用私鑰來進行簽名,所以如果沒有了私鑰,就意味著你不能進行簽名了,所以就無法使用這個證書了,此時你只能revoke之前的證書再申請一個。因此在申請完證書時,最好導出並保存好你的私鑰。當你想與其他人或其他設備共享證書時,把私鑰傳給它就可以了。私鑰保存在你的Mac中,而蘋果生成的Certificate中包含了公鑰。當你用自己的私鑰對代碼簽名後,蘋果就可以用證書中的公鑰來進行驗證,確保是你對代碼進行了簽名,而不是別人冒充你,同時也確保代碼的完整性等。
證書主要分為兩類:Development和Proction,Development證書用來開發和調試應用程序,Proction主要用來分發應用程序(根據證書種類有不同作用),下面是證書的分類信息:(括弧內為證書有效期)
(註:不同類型的開發者賬戶所能創建的證書種類不同,關於開發者賬戶的對比和InHouse證書相關的內容,請見我的另一篇文章)
Development
App Development (1年):用來開發和真機調試應用程序。
Push Development (1年):用來調試Apple Push Notification
Proction
In-House and Ad Hoc (3年):用來發布In-House和AdHoc的應用程序。
App Store :用來發布提交App Store的應用程序。
MDM CSR
Push Proction (1年):用來在發布版本中使用Apple Push Notification。
Pass Type ID Certificate
Website Push ID Certificate
有一些類型的證書我沒有使用過,所以也不了解具體的作用。
App ID
App ID用於標識一個或者一組App,App ID應該是和Xcode中的Bundle ID是一致的或者匹配的。App ID主要有以下兩種:
Explicit App ID:唯一的App ID,這種App ID用於唯一標識一個應用程序,例如com.ABC.demo1,標識Bundle ID為com.ABC.demo1的程序。
Wildcard App ID:通配符App ID,用於標識一組應用程序。例如*可以表示所有應用程序,而com.ABC.*可以表示以com.ABC開頭的所有應用程序。
每創建一個App ID,我們都可以設置該App ID所使用的APP Services,也就是其所使用的額外服務。每種額外服務都有著不同的要求,例如,如果要使用Apple Push Notification Services,則必須是一個explicit App ID,以便能唯一標識一個應用程序。下面是目前所有可選的服務和相應的配置要求。
如果你的App使用上述的任何一種service,就要按照要求去配置。
Device
Device最簡單了,就是iOS設備。Devices中包含了該賬戶中所有可用於開發和測試的設備。 每台設備使用UDID來唯一標識。
每個賬戶中的設備數量限制是100個。Disable 一台設備也不會增加名額,只能在membership year 開始的時候才能通過刪除設備來增加名額。
關於設備數量的問題,詳見這篇文章。
Provisioning Profile
一個Provisioning Profile文件包含了上述的所有內容:證書、App ID、設備。
試想一下,如果我們要打包或者在真機上運行一個應用程序,我們首先需要證書來進行簽名,用來標識這個應用程序是合法的、安全的、完整的等等;然後需要指明它的App ID,並且驗證Bundle ID是否與其一致;再次,如果是真機調試,需要確認這台設備能否用來運行程序。而Provisioning Profile就把這些信息全部打包在一起,方便我們在調試和發布程序打包時使用,這樣我們只要在不同的情況下選擇不同的profile文件就可以了。而且這個Provisioning Profile文件會在打包時嵌入.ipa的包里。
例如,如下圖所示,一個用於Development的Provisioning Profile中包含了該Provisioning Profile對應的App ID,可使用的證書和設備。這意味著使用這個Provisioning Profile打包程序必須擁有相應的證書,並且是將App ID對應的程序運行到Devices中包含的設備上去。
如上所述,在一台設備上運行應用程序的過程如下:
與證書一樣,Provisioning Profile也分為Development和Distribution兩種:
(註:前面提到不同賬戶類型所能創建的證書種類不同,顯然Profile文件的種類是和你所能創建的證書種類相關的)
Development (1年)
Distribution (1年)
In House
Ad Hoc
App Store
In House 與Ad Hoc的不同之處在於:In House沒有設備數量限制,而Ad Hoc是用來測試用的,Ad Hoc的包只能運行在該賬戶內已登記的可用設備上,顯然是有最多100個設備的數量限制。所以這兩種Provisioning Profile文件的區別就在於其中的設備限制不一樣而已,而他們所使用的Certificate是相同的。
2.開發/發布流程
了解了上面的概念,再來看開發及發布流程就非常簡單了,而且相信你不用看教程也能一步步完成所有的操作了。
開發/真機調試流程
根據上面的介紹,可以知道進行Development主要有以下幾個步驟:
申請證書
加入設備
生成Provisioning Profile
設置Xcode Code Sign Identifer
事實上第三步通常是不需要的,因為我們通常都是用Xcode生成和管理的iOS Team Provisioning Profile來進行開發,因為它非常方便,所以不需要自己手動生成Provisioning Profile。
iOS Team Provisioning Profile是第一次使用Xcode添加設備時,Xcode自動生成的,它包含了Xcode生成的一個Wildcard App ID(*,匹配所有應用程序),賬戶裡面所有的Devices和所有Development Certificates,如下圖所示。因此,team中的所有成員都可以使用這個iOS Team Provisioning Profile在team中的所有設備上調試所有的應用程序。並且當有新設備添加進來時,Xcode會更新這個文件。
發布流程
網上有很多關於發布App Store的流程,我就不綴述了,不過根據上面的概念介紹,不管是App Store、In-House還是Ad-Hoc,打包流程都是差不多的,都包括了以下幾個關鍵步驟:
創建發布證書
創建App ID
創建對應的Provisioning Profile文件
設備Bundle ID和App ID一致
設置Xcode Code Sign Identifer,選擇合適的Profile和證書進行簽名,打包
以上就是對證書、Provisioning Profile、App ID等的介紹,下一篇文章會介紹以下In-House證書相關的內容。