開發流程
我們的製作流程分爲以下三步:
- 獲取開發者證書
- 獲取APP ID
- 獲取描述文件(profiles),如果是測試環境,需要先添加UUID(蘋果手機的UUID),只有添加了的手機才能用於測試
1.開發者證書:
總共有兩種類型:Developer(開發證書)和Distribution(發佈證書),這個是最基礎的,不論是真機調試,還是上傳到appstore都是需要的,是一個基證書,用來證明自己開發者身份的;
2.App ID:
顧名思義,是一個APP的唯一標示,相當於人的身份證號,如果有兩個安裝包A和B是同一個App ID,安裝A後再安裝B,B就會將A覆蓋掉,取而代之。APP的更新也就是這個道理,安裝了1.0版本。如果發佈1.1版本,需要1.1版本的App ID和1.0的相同,手機會先去找是否有次App ID已經安裝了,如果未安裝,則直接進行安裝1.1版本;如果發現有1.0版本,則對1.0版本進行覆蓋。類似同一個文件夾下,相同名字的文件只能有一個,如果再拷貝一個相同名字的文件,就會提示是否替換掉舊的文件。
在設置項中可以配置該應用的權限,比如是否用到了PassBook,GameCenter,以及更常見的push服務,如果選中了push服務,那麼就可以創建生成下面第3條所提到的推送證書,所以,在所有和推送相關的配置中,首先要做的就是先開通支持推送服務的App ID;
3.描述文件:
Profiles,這個東西是很有蘋果特色的一個東西,我一般稱之爲描述文件,該文件將App ID,開發者證書,硬件Device綁定到一塊兒,在開發者中心配置好後可以添加到Xcode上,也可以直接在Xcode上連接開發者中心生成,真機調試時需要在描述文件中添加真機的UDID;是真機調試和上架必備之珍品
4.開發者證書創建:
基本流程:
通過蘋果電腦創建CRS文件 → 登錄開發者賬號 → 進入certificates頁面 → 選擇開發環境 → 上傳CRS文件
4.1:在蘋果電腦上通過鑰匙串訪問創建CRS文件
- 去Launchpad-->其他中找到 “鑰匙串訪問” 點擊鑰匙圖標
- 生成證書請求:鑰匙串訪問⟶證書助理⟶從證書頒發機構請求證書
輸入兩個電子郵件地址和常用名稱。電子郵件地址是你註冊AppleID。
a) 常用名稱輸入公司名稱
b) 選擇“存儲到磁盤”。保存後的名稱應該爲:CertificateSigningRequest.certSigningRequest
備註:CSR文件儘量每個證書都製作一次,將常用名稱區分開來,因爲該常用名稱是證書中的密鑰的名字;
4.2:通過開發者中心生成證書
首先登陸到開發者中心,點擊Certificates,identifiers&Profiles圖標,點進證書,會顯示如下界面,點擊右上角的加號
進入到下面的界面,根據需求選擇是創建開發環境的證書還是生產環境的證書,開發測試證書用於真機調試,發佈證書用於提交到appStore,我們以開發證書爲例,選擇第一個紅框中的內容
上傳通過蘋果電腦生成的CRS文件,上傳完成後,點擊continue
上傳成功後進入到下載頁面,將證書下載到本機(開發環境證書名一般是:ios_development.cer),此證書用於後面生成.p12文件:
5.App ID的創建
選擇 “Identifiers”的 “App IDs”,點擊“+”:
輸入description和bundle ID,勾選Associated Domains
- App ID Prefix 蘋果已經幫我們填了,不需要我們填,可以看出,它是一個團隊的ID
- App ID Description 是一個App ID的描述,可以根據自己的項目填寫
- App ID Suffix 有兩個選項:
Explicit App ID :顧名思義,這裏要填一個明確的 App ID,
什麼意思呢?可以這麼來解釋:我們做項目時的Bundle Identifier (Bundle ID)是用來標示我們的app的。我們的App ID也是用來標示我們的app的。這兩個有什麼聯繫呢?Explicit App ID 就是要我們確定一個唯一的Bundle ID,用來標示我們的 app,使它有一個固定的身份。可以發現,當提交應用到蘋果時,如果我們一開始沒寫Explicit App ID,蘋果會自動幫我們生成一個與我們發佈時填的一樣的Bundle ID 到我們的App ID中。
填寫Explicit App ID 的格式爲:com.companyDomain.appName
Wildcard App ID:顧名思義,這裏要填一個通配符的 App ID 。意思就是,我們只需要填一個在所有應用都能試用的 App ID 就好了。
填寫WildcardApp ID 的格式爲:com.companyDomain.*
申請真機調試的時候,不是爲了某一個應用去調試,而是爲了所有的應用去調試,必須能適應每一個app,所以我們選擇Wildcard
App ID。
com.companyDomain.* 的companyDomain 一般寫公司的網址域名,也可以按需要寫
- Associated Domains
ios 13.0以後的系統需要universal地址,使得可以通過https連接的方式打開app,在此處勾選打開就行,具體配置需要在uni-app項目中配置,配置參考文檔:https://ask.dcloud.net.cn/article/36393#unilink
填寫完畢後,點擊continue按鈕,進入到以下頁面,點擊register進行註冊
回到identifiers首頁,就可以看見我們剛剛添加的appid了
6.設備UDID的添加(開發環境才需要,生產環境請跳過)
如圖,點擊“+”,一個99美元賬號(個人或者公司級)只能添加100臺設備。
填寫Device Name和Dveice ID:Device Name是設備名稱,可自己隨便填寫,UDID可以通過iTools查看
TIP:通過iTools查看UDID
填寫完成後,點擊continue,進入如下頁面,點擊register就添加完成了:
7.描述文件的製作
描述文件分爲開發和發佈兩種,此處以開發爲例
開發模式需要選擇之前創建的App ID(爲哪個APP創建描述文件)、添加過得UDID(哪些手機可以運行APP)、以及開發證書(使用哪個證書來開發或者打包)。
發佈模式需要選擇之前創建App ID(爲哪個APP創建描述文件)、以及發佈證書(使用哪個證書來發布)。
進入到profiles首頁,點擊 + :
根據需求選擇是開發環境還是生產環境,點擊continue按鈕
進入到如下頁面,選擇APP ID
點擊continue,進入以下頁面,選擇證書
下載描述文件,uni-app雲端生成時需要此描述文件
8.生成.p12文件
爲什麼要導出.p12文件?
當我們用大於三個mac設備開發應用時,想要申請新的證書,如果在我們的證書裏,包含了3個發佈證書,2個開發證書,可以發現再也申請不了開發證書和發佈證書了(一般在我們的證書界面中應該只有一個開發證書,一個發佈證書,沒必要生成那麼多的證書,證書一般在過期之後纔會重新添加。)
我們的每一個證書都可以生成一個.p12文件,這個文件是一個加密的文件,只要知道其密碼,就可以供給所有的mac設備使用,使設備不需要在蘋果開發者網站重新申請開發和發佈證書,就能使用。
注意:一般.p12文件是給與別人使用的,本機必須已經有一個帶祕鑰的證書(在第一步中生成的證書)纔可以生成.p12文件,生成.p12文件需要在蘋果電腦上纔行,步驟如下:
打開鑰匙串,選擇我們需要的證書,右擊,選擇“導出“iPhone Distribition:```”:
填寫名字:開發證書填寫:developer,發佈證書填寫:distribution
點擊存儲會設置證書密碼,密碼和驗證填寫相同內容,點擊好。
.p12文件: