iOS應用的上架流程

不知不覺開發iOS應用已經有5年+了,近期前同事問我有沒有iOS應用上架的相關文章,其實剛接觸iOS開發的時候就寫過iOS App上線提交流程,沒有推薦他使用,因為在2018-06-07蘋果的開發者工具系統 iTunes Connect 已變更為 App Store Connect,后臺的管理頁面進行了全面升級,頁面布局發生了很大的改變。所以借著這個機會,也花些時間整理下,把近期蘋果更新內容都補上,其實有的時候幫助別人的同時也在幫助自己。言歸正傳,我們今天介紹iOS應用提交至蘋果審核的上架流程。


一、蘋果手機安裝App的5種方式

1.手機連接蘋果電腦,用Xcode開發工具直接運行,即可安裝App;

2.開發者用Ad-Hoc證書進行分發測試,目前測試分發平臺有蒲公英和fir.im;需要收集用戶手機的UDID標識,每個賬號只有100個名額進行測試;

3.使用蘋果的TestFlight邀請碼進行安裝測試,需要登錄蘋果后臺增加測試用戶的郵箱,測試用戶需要在iOS手機客戶端下載 TestFlight,然后進入應用輸入郵箱里面邀請碼進行下載測試。現在提交蘋果審核的應用也會同步一份TestFlight進行應用的灰度測試;

4.使用企業版的In-House證書發布,缺點是只允許企業內部用戶使用,不允許上線App Store,而且安裝還需要證書的授權,優點是應用迭代更新方便,不需要蘋果進行審核。但是最近蘋果對企業的證書管理越來越嚴格了,如果有敏感的問題,也會吊銷企業的開發者賬號所屬權;

5.直接導出應用的IPA文件,提交App Store進行審核,所有的蘋果手機都可以安裝應用。

今天我們主要介紹第五種類型,也是開發人員必須要掌握的。


二、應用上架的后臺準備

我們知道開發iOS應用,是需要蘋果開發者賬號來支撐的,目前蘋果開發者賬號有 Individual 和 Company/Organization 兩種類型。前者每年99美元,可以增加后臺應用管理者,無法增加開發者來管理證書;后者每年299美元,既可以增加后臺應用管理者,也可以增加開發者來管理證書。今天我們使用普通的個人開發者賬號進行描述。

首先登錄 蘋果開發者官網

開發者官網

點擊Account,輸入開發者賬號的用戶名和密碼,點擊確認按鈕,進行登錄,這里強調一下蘋果登錄的安全機制,現在后臺登錄需要開啟雙重認證機制,如果用其他人的開發者賬號,登錄是非常麻煩的,還要別人給你發送驗證碼,登錄成功后會提示你是否信任此瀏覽器嗎?為了下次登錄方便,我們還是點擊信任,下次只要使用用戶名和密碼就可驗證通過,不過瀏覽器的緩存時間失效后,還是需要雙重認證才能登錄。

官網登錄

在iOS開發和提交審核的時候要與蘋果的后臺打交道,涉及到開發證書Certificates、App ID、Devices及描述文件Profiles等相關知識,這里面有復雜的通信原理,涉及到非對稱加密、雙方的公鑰私鑰、摘要算法及數字簽名等內容,這里不詳細說明。

開發證書(Certificates)

iOS 證書分為兩類:Development 和 Production(Distribution)。每個證書都有時間限制,一般一年就過期。

iOS App Development 在開發階段進行真機測試時需要用到的證書。

iOS App Distribution 可以用于進行 Ad-Hoc 測試、打包上傳到 App Store 或者打包成 Enterprisee(In-House) 類型供企業內部使用。

那么我們如何申請證書呢,首先點擊證書、標識及描述文件連接

證書、應用標識、描述文件

然后我們點擊下圖的添加按鈕,創建一個證書

證書、標識、描述文件列表


創建開發的證書

點擊Continue

這里需要一個申請證書,格式為.certSigningRequest 里面包含公鑰和私鑰及摘要算法等相關內容。

點擊mac OS的鑰匙串訪問里的 證書助理 -> 從證書頒發機構請求證書,最后會創建出一個.certSigningRequest文件,保存到磁盤文件中,后面會用到。

申請證書
保存到本地的申請證書

輸入電子郵件,選擇存儲到磁盤,點擊繼續,導出保存在磁盤的指定位置。

增加申請證書

點擊continue,

下載證書

開發者證書就創建完成了,把它下載到本地,進行雙擊操作安裝,結果會在鑰匙串中顯示,這里多介紹一句,這個證書創建只能歸一個人擁有,如果你的團隊伙伴也想用這個證書怎么辦,畢竟一個開發者賬號創建的證書是有限的,你需要將安裝的證書導出p12文件,然后設置密碼,分發給其他伙伴,他們輸入密碼后就可以正常使用了。

導出p12證書

至此開發的證書就創建完畢,發布的證書也等同一樣,區別是就在選擇證書的時候選擇發布就可以了。

App ID

我們知道開發iOS的App,需要一個App的唯一標識Bundle ID,而App ID由 TeamID 和 Bundle ID 組合,表明這個App是獨一無二的,現在我們需要手動的創建一個App ID,點擊增加按鈕

應用標識


應用的配置信息

這里重點說兩個內容

1.設置Bundle ID? 內容通常以反域名(reverse-domain-name)格式的 Company Identifier(Company ID)作為前綴? 例如:com.baidu.map 地圖App。

它目前有兩種類型

Explicit App ID:唯一的 App ID,用于唯一標識一個應用程序。

Wildcard App ID:含有通配符的 App ID,用于標識一組應用程序。

2.Capabilities: App ID的權限設置? 向組應用,開啟后臺服務,消息推送,內購.....配置好App所需要的權限后點擊Continue-->Register 即可完成App ID的創建。

Devices

Devices 就是運行 iOS 系統用于開發調試 App 的設備。每臺 Apple 設備使用 UDID (Unique Device Identifier)來唯一標識。

iOS 設備連接 Mac 后,可通過 iTunes->Summary 或者 Xcode->Window->Devices 查看其 UDID。

Apple Member Center 網站個人賬號下的 Devices 中包含了注冊過的所有可用于開發和測試的設備,普通個人開發賬號每年累計最多只能注冊100個設備。

設備UDID標識

點擊增加按鈕,增加用戶設備的UDID,方便用戶后期進行測試

注冊設備名稱和標識

輸入設備的標識,這里要詳情記錄用戶的別名,方便后期管理和維護,畢竟名額只有100個。輸入完設備名稱和UDID ,點擊Continue,即增加完成。

描述文件(Provisioning Profiles)

Provisioning Profile 文件包含了上述的所有內容:Certificates、App ID 和 Devices。

申請Development描述文件

Provisioning Profile 描述文件

點擊增加創建,創建開發的描述文件

創建描述文件

選擇iOS App Decelopment描述文件,點擊Continue

選擇App ID

選擇剛剛創建的App ID,繼續點擊Continue


選擇證書

選擇剛剛創建的Certificates,如果想下載開發的描述文件就選擇開發證書,如果是發布的描述文件,就選擇發布即可,繼續點擊Continue,選擇設備ID信息


UDID信息列表

選擇Select All,包含所以設備信息,點擊Continue

描述文件名稱

輸入描述文件名稱,一般格式為dev+App ID+時間命名即可,方便后期管理文件,文件的有效期為一年,過期后再次創建即可,繼續點擊General。

下載描述文件

點擊Download,下載雙擊安裝即可。

下面我們介紹一下應用如何上傳至App Store。

三、App Store Connect管理App的信息

一般先登錄開發者后臺,選擇App Store Connect,去用戶管理和訪問的頁面

App Store Connect

選擇用戶和訪問,再選擇我的App,進入我的App管理頁面


我的App

新建一個后臺的App的描述配置,點擊新建 App

新建App


創建App

SKU Number:Stock Keeping Unit,貨號。如果你有很多應用,給每一個應用指定一個唯一的貨號會方便你管理應用庫。你可以用數字或者字母隨便指定你的貨號。

SKU:一個獨特的、不會在 App Store 中顯示的 App ID。自己可以自己定義。有人認為SKU主要去區分自己賬戶下邊不同的APP。

不過還是建議使用項目中的Xcode中的 Bundle Identifier。

輸入平臺、App的主要語言、套件ID就是應用的Bundle ID、SKU、用戶訪問權限控制,點擊創建即可。

查看App的相關信息,可以編輯后臺管理的App名稱

app后臺的信息

點擊iOS App導航的欄目,上傳應用的截圖,方便在App Store中查看。

上傳app預覽和快照


輸入宣傳文本,介紹App在當前版本更新的內容是什么,描述是介紹App是干什么的,有什么用途,關鍵詞是便于用戶能搜索到。


App基本信息


這里最重要的就是構建版本,就是你開發的應用,用Xcode導出的IPA文件,最終要提交到App Store中,在構建版本中出現+號后,即有可構建的版本,那么你的應用上架流程就快接近尾聲了。

構建版本


四、如何構建iOS應用的IPA文件

如何將打包好的IPA文件提交至App Store中審核,這里需要一個重要的蘋果開發工具,Xcode,假設你現在已經有開發完成的App項目,本地的Bundle ID配置也是對的,工具欄中我們選擇Generic iOS Device,這里我們就不需要連接真機進行構建了。然后點擊Product,選擇Archive開始構建發布版本。

構建打包App

構建成功后,會彈出如下窗口:選擇剛剛構建成功的應用,選擇Distribute App按鈕

Archives列表

選擇iOS App Store,點擊Next

iOS App Store

選擇Export導出,繼續點擊Next

Export

下面有兩種簽名,一個是自動簽名,另一個是手動簽名,本地只要有證書,就可以選擇自動簽名,系統工具會幫你創建描述文件進行簽名,如果是手動簽名,需要本地有證書和描述文件,需要手動選擇即可。


手動簽名


選擇對應的證書和描述文件,點擊Next

選擇證書和描述文件


描述了相關的信息,點擊Export,即可導出對應App的IPA文件到指定的目錄。

導出IPA

至此iOS的App的IPA文件我們就導出來了,是經過簽名的,那么我們如何將應用文件提交至蘋果審核呢?其實需要使用Xcode自帶Applocation Loader工具。


五、Applocation Loader提交IPA文件至App Store審核


打開Application Loader

需要手動的輸入開發者賬號的用戶名和密碼,這里強調一個事情,即使你的賬號和密碼輸入正確,蘋果還讓你用簽名的密碼去登錄,那密碼怎么簽名呢,下面慢慢介紹。

appid和密碼登錄

需要我們到Apple ID的官網登錄,使用Apple ID和密碼進行登錄,而且還要雙重認證,這個安全驗證也是最近蘋果才更新的,感覺確實麻煩。

去appleid官網登錄

登錄成功后,查看安全,點擊App 專用密碼的生成密碼,將生成的密碼復制到Applocation Loader的登錄頁面進行登錄即可。

生成專用密碼


選擇剛剛導出的IPA文件進行上傳,后面點擊下一步,至最后提交到App Store中即可。

上傳IAP

提交成功后,一般要等10分鐘左右,蘋果機器檢查完后,結果會用郵件進行通知,如果成功了,你就可以去開發者后臺管理頁面,上傳構建成功的版本,點擊發布就行了。到這里整個的上線App的上架流程就介紹完了,其實內容還是比較多的。

最后我們在總結回顧一下核心內容

1.蘋果手機安裝App的五種方式;

2.介紹證書、App ID、Devices及Profiles的相關內容;

3.App Store Connect后臺管理App的信息;

4.將iOS應用導出IAP文件;

5.將應用的IPA文件提交到App Store中進行審核。

如果大家有什么問題也可留言,我會抽時間與你們一起討論,大家相互學習。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容