1. 程式人生 > 其它 >iOS證書(.p12)和描述檔案(.mobileprovision)申請

iOS證書(.p12)和描述檔案(.mobileprovision)申請

原文連結 : iOS證書(.p12)和描述檔案(.mobileprovision)申請

如果你從事過iOS開發,大概都會了解到iOS有兩種證書和描述檔案:

證書型別 使用場景
開發(Development)證書和描述檔案 用於開發測試,在 HBuilderX 中打包後可在真機環境除錯
釋出(Distribution)證書和描述檔案 用於提交 AppStore,在 HBuilderX 中提交雲打包後提交到 AppStore 稽核釋出

如果從未接觸過 iOS,按照下面教程的所需環境、步驟操作,你將學會如何製作這 兩種證書 和 描述檔案。

準備環境

  1. 必需要有蘋果開發者賬號,並且加入了 “iOS Developer Program”
  2. Mac OS 10.9以上系統(如果已經申請p12證書則不需要)

蘋果開發帳號說明

個人賬號(Individual)/公司團隊賬號 (Company/Organization):

費用都是99美金一年,兩者無本質區別,都可以釋出應用到蘋果市場。

區別在於個人賬號在App Store銷售者只能顯示個人的ID,比如san zhang,單人使用。公司團隊賬號在App Store銷售者可以顯示類似Studios,或者自定義的團隊名稱,比如Mamshare INC,公司賬號允許多個開發者協作開發,比個人帳號多一些帳號管理和級別許可權的設定。

這兩種帳號都可以用於開發,但在生成開發證書的時候,需要在生成mobileprovision描述檔案時把需要安裝的iPhone/iPad的裝置UDID進行繫結(最多可以繫結100個裝置),否則生成的ipa不能正常安裝到測試裝置上。

企業賬號 (Enterprise):

費用299美金一年,該賬號開發應用不能釋出到App Store,只能用於企業自己內部使用的app通過網站下載,對測試的蘋果iOS裝置UDID數量不限制。

生成證書請求檔案

不管是申請開發 (Development) 證書 還是 釋出 (Distribution) 證書,都需要使用證書請求 (.certSigningRequest) 檔案,證書請求檔案需在Mac OS上使用 “鑰匙串訪問” 工具生成。

  1. 開啟“鑰匙串訪問”工具

  2. 開啟選單 “鑰匙串訪問”->“證書助理”,選擇“從證書頒發機構請求證書...”:
  3. 開啟建立請求證書頁面,在頁面中輸入使用者郵件地址、常用名稱,選擇儲存到磁碟,點選 “繼續” :
  4. 檔名稱為 “CertificateSigningRequest.certSigningRequest”,選擇儲存位置,點選 “儲存” 將證書請求檔案儲存到指定路徑下,後面申請 開發(Development)證書釋出(Production)證書 時需要用到。
  5. 在儲存位置可看到 生成的請求證書(CertificateSigningRequest.certSigningRequest)。

登入蘋果開發者賬號

  1. 開啟網站 iOS Dev Center
  2. 使用蘋果開發者賬號登入 iOS Dev Center:
  3. 登入成功後在頁面左側選擇 “Certificates,IDs & Profiles” 進入證書管理頁面:
  4. 在證書管理頁面,可以看到所有已經申請的證書及描述檔案:

申請蘋果 App ID (App的唯一標識)

  1. 選擇頁面的“Identifiers”可檢視到已申請的所有 App 應用標識,點選頁面上的加號來建立一個新的應用標識:
  2. 選擇標識型別為“App”,然後點選 “Continue”
  3. 平臺選擇“iOS,tvOS,watchOS”,Bundle ID 選擇“Explicit”,在 Description 中填寫描述,然後填寫 Bundle ID,Bundle ID 要保持唯一性,建議填寫反域名加應用標識的格式 如:“uni.xxxxxxxxx”,然後點選 “Continue”

注意:在 HBuilderX 中 App 提交雲端打包時介面上的 AppID 欄填寫的就是這個 Bundle ID


4. 接下來需要選擇應用需要使用的服務(如需要使用到訊息推送功能,則選擇“Push Notifications”),然後點選“Continue”

注意:如果App用不到的服務一定不要勾選,以免響應稽核


5. 確認後選擇提交,回到 identifiers 頁面即可看到剛建立的App ID:

申請開發(Development)證書和描述檔案

開發(Development)證書 及 對應的描述檔案用於開發階段使用,可以直接將 App 安裝到手機上,一個描述檔案最多繫結100臺測試裝置(開發證書不能用於釋出應用到 App Store)。

申請開發(Development)證書

  1. 在證書管理頁面選擇 “Certificates" 可檢視到已申請的所有證書(TYPE:Development 為開發證書,Distribution為釋出證書),點選頁面的加號來建立一個新的證書:
  2. 在 “Software” 欄下選中 “iOS App Development” 然後點選 “Continue”:
  3. 用到剛剛生成的證書請求檔案,點選“Choose File...”,選擇剛剛儲存到本地的 “CertificateSigningRequest.certSigningRequest”檔案,點選 “Continue” 生成證書檔案:
  4. 生成證書後選擇 “Download” 將證書下到本地 (development.cer):

  5. 雙擊儲存到本地的 development.cer 檔案,會自動開啟 “鑰匙串訪問” 工具說明匯入證書成功,可以在證書列表中看到剛剛匯入的證書,接下來需要匯出 .p12 證書檔案,選中匯入的證書,右鍵選擇 “匯出xxxxxx”:
  6. 輸入檔名、選擇路徑後點擊 “儲存”:
  7. 輸入密碼及確認密碼後點擊 “好”:
  8. 至此,我們已經完成了開發證書的製作(得到了 xxx.p12 證書檔案)。
  9. 如果出現開發證書不受信任,說明開發裝置中 Apple Worldwide Developer Relations Certification Authority證書被刪除了 或者 已安裝的WWDRCA失效了。

    解決方案:https://www.apple.com/certificateauthority/

新增除錯裝置

開發描述檔案必須繫結除錯裝置,只有授權的裝置才可以直接安裝 App,所以在申請開發描述檔案之前,先新增除錯的裝置。
(如果已經新增裝置,可跳過此節)

  1. 在證書管理頁面選擇 “Devices”,可檢視到已新增的所有裝置資訊,點選頁面上的加號來新增一個新裝置:
  2. 填寫裝置名稱 和 UDID(裝置標識):

獲取裝置UDID方法,將裝置連線到電腦,啟動 iTunes,點選此區域可切換顯示裝置的 UDID,右鍵選擇複製。
直接點選連結https://www.pgyer.com/tools/udid,掃描二維碼,會提示安裝一個描述檔案,點選安裝之後,就會在瀏覽器中顯示出裝置資訊。長按複製"裝置資訊UDID"下面的值,就是UDID了。

申請開發 (Development) 描述檔案

  1. 在證書管理頁面選擇 “Profiles”,可檢視到已申請的所有描述檔案,點選頁面上的加號來新增一個新的描述檔案:
  2. 在 “Development” 欄下選中 “iOS App Development”,點選“Continue”按鈕:
  3. 這裡要選擇之前建立的 “App ID” (這裡是“uni.xxxxxxxxx”),點選“Continue”:
  4. 接下來選擇需要繫結的證書,點選“Continue”:
  5. 選擇授權除錯裝置,這裡建議直接勾選 “Select All”,點選 “Continue”:
  6. 輸入描述檔案的名稱(如“xxxxProfile”), 點選 “Generate” 生成描述檔案:
  7. 點選“Download”下載儲存開發描述檔案(檔案字尾為 .mobileprovision)
  8. 至此,我們已經得到了開發證書(.p12)及對應的描述檔案(.mobileprovision)。

申請釋出(Distribution)證書和描述檔案

釋出 (Production) 證書用於正式釋出環境下使用,用於提交到Appstore稽核釋出。釋出證書打包的 ipa,不可以直接安裝到手機上。

申請釋出(Production)證書

  1. 在證書管理頁面選擇 “Certificates" 可檢視到已申請的所有證書(TYPE:Development 為開發證書,Distribution為釋出證書),點選頁面的加號來建立一個新的證書:
  2. 在 “Software” 欄下選中 “App Store and Ad Hoc”,點選 “Continue”:
  3. 接下來同樣需要用到之前生成的證書請求檔案,點選“Choose File...”選擇剛剛儲存到本地的 “CertificateSigningRequest.certSigningRequest”檔案,點選 “Continue” 生成證書檔案:
  4. 生成證書成功,選擇“Download” 將證書下載到本地 (ios_production.cer):
  5. 同樣雙擊儲存到本地的 ios_production.cer 檔案將證書匯入到 “鑰匙串訪問”工具中,可以在證書列表中看到剛剛匯入的證書,接下來需要匯出 .p12 證書檔案,選中匯入的證書,右鍵選擇 “匯出xxxxxx”:

  6. 輸入檔名、選擇路徑後點擊 “儲存”:
  7. 輸入密碼及確認密碼後點擊 “好”:
  8. 如果彈出需要登入鑰匙串的密碼,輸入當前裝置賬戶密碼即可。
  9. 至此,我們已經完成了釋出證書的製作(得到了 xxx.p12 證書檔案),接下來,繼續生成釋出描述檔案

申請釋出 (Distribution) 描述檔案

  1. 在證書管理頁面選擇 “Profiles”,可檢視到已申請的所有描述檔案,點選頁面上的加號來新增一個新的描述檔案:
  2. 在 “Distribution” 欄下選中 “App Store”,點選“Continue”按鈕:
  3. 這裡要選擇之前建立的 “App ID” (這裡是“uni.xxxxxxxxx”),點選“Continue”:
  4. 接下來選擇需要繫結的釋出證書(iOS Distribution),這裡勾選剛剛生成的釋出證書”,點選“Continue”:
  5. 接下來輸入描述檔案的名稱(如“AppProfileDistribution”), 點選 “Generate” 生成描述檔案:
  6. 然後點選 “Download” 將描述檔案下載到本地(檔案字尾為 .mobileprovision),
  7. 至此,我們已經得到了釋出證書(.p12)及對應的釋出描述檔案(.mobileprovision)。