【iOS】#28 Set(神奇形色牌) Part3: 上架流程

App Store 上架流程記錄

--

要上架 App Store 需要經過幾項流程:

  1. 加入 Apple Developer Program,付款開通成為蘋果開發者。
  2. 在 KeyChain Access 程式中,生成憑證檔
  3. 準備 iOS Distribution Certificate
  4. 建立 APP ID
  5. 建立 Profile
  6. 在 Xcode 設定 Signing
  7. App Store Connect 建立 APP
  8. 打包 APP 上傳
  9. TestFlight 平台測試 (optional)
  10. 上傳截圖與填寫必要資料
  11. 提交等待審查

1. 加入 Apple Developer Program

開通 Apple 開發者帳號後,才可把 App 上架至 App Store。目前費用是 $3400 NTD / 年。

選擇利用個人名義申請的話,就可以不用管 D-U-N-S Number,若是企業才需要這個編碼。

確定刷卡完成後,會等待一段時間開通,Apple 官方是說等 48 小時左右。我的經驗是在週六付款,隔週週一開通成功。成功後會收到 Apple 的來信,就代表可以使用開發者帳號了!

2. 在 KeyChain Access 程式中,生成憑證檔

在預設的 KeyChain Access 程式中,找到 Request a Certificate From a Certificate Authority

接著選擇存在 disk 中

3. 準備 iOS Distribution Certificate

開發者後台中,選擇 Certificates, Identifiers & Profiles

點選 Certificates 旁的「+」後,會進入以下頁面,選擇想要生成的憑證類型。若是要上架 iOS APP 可以選擇 Apple Distribution 或 iOS Distribution

關於各個憑證的差別,以下這篇有詳細的表格解說~

接下來把剛才使用 KeyChain Access 生成的 Certificate Upload 上去

最後把 .cer 憑證檔案下載下來並打開,即完成安裝

4. 建立 APP ID

同樣在後台的 Certificates, Identifiers & Profiles 中,點選左邊欄位的 identifiers

按下「+」-> 「APP ID」-> 「APP」步驟後,會進入以下畫面

Bundle ID 輸入的要跟 Xcode 專案的一樣(在專案的 General Tab 中可以找到 Bundle Identifier),記得 Bundle ID 要是獨一無二的 。

Capabilities 中可以選擇這個 APP 會用到的功能,例如 Game Center, 推播等等,最後按下「Register」即可成功註冊 APP ID

5. 建立 Profile

一樣在後台的 Certificates, Identifiers & Profiles 中,切換到 Profiles 並點選「+」進行新增

選擇 App Store

在 Generate a Provisioning Profile 中選擇剛建立好的 APP ID

再來選擇剛建立好的憑證以及 Profile 的名稱,即可完成建立!最後再把 Profile 下載下來。

6. 在 Xcode 設定 Signing

在專案的 Signing & Capabilities 中做設定。可以把「Automatic Manage Signing」 打開,或者使用手動的方式。

自動的話只需要從下拉選單選擇 Team;手動的話需要指定本地的 Profile 上傳

7. 在 App Store Connect 建立 APP

剛剛的後台是開發者的後台,而 App Store Connect 是管理你上架 App 的地方。點選「我的 App」-> 「+」->「新的 App」

選擇平台、名稱、語言以及剛建立的 Bundle ID,SKU 可以直接輸入 Bundle ID 即可

8. 打包 APP 上傳

回到 Xcode 中,在裝置的部分選擇使用 Build Any iOS Device (arm64)

點選「Product」->「Archive」打包

接著點選 Distribute App

然後就按照預設的一路下一步囉!Singing 的部分再選擇要自動管理或手動。如果一切沒問題的話,即可上傳成功!

過程中如果有遇到 Provisioning profile “xx_Distribution” doesn’t include signing certificate “iPhone Developer: “ 這個問題,可以參考一下這篇解決方式:

9. TestFlight 平台測試 (optional)

一般來說 App 上架前會先經過 alpha test, beta test,確認沒問題後才會進行上架。TestFlight 即為進行測試的平台。

一開始上傳的版本會呈現「缺少出口合規資訊」,填完必要的資訊後過不久,就會更改為「正在測試」。

內部群組中的測試帳號,test app 不需通過 Apple 審核即可進行測試。

外部群組可以通過邀請網址或者手動輸入增加測試的人數,app 需經過 Apple 的審核才可進行測試。不過這邊的審核不是正式上架的 Apple 審核,正式的還需要上傳截圖、填寫一些資料,並且完整通過 App Store Review Guidelines 才可發布。

測試的帳號會接收到電子郵件,在裝置下載 TestFlight 後,即可在裡面看到 App ,可下載下來做實機測試。

10. 上傳截圖與填寫必要資料

在 App Store Tab 中,有需多資料需要進行填寫與上傳,基本上沒有太多困難的地方,按下提交後若有缺少的部分,它也會告訴你

其中 Apple 有規定要「隱私權政策 URL」,可以參考一下這篇提供的網址,方便生成隱私權政策 URL

11. 提交等待審查

按下提交之後,就等待 Apple 官方的審查吧!根據經驗通常在晚上睡覺的時間 Apple 就會審查結束了~

如果出問題再看官方的描述去修正囉!

Apple Store

最後如果大家想玩的話,可以下載來玩喔!剛開始玩可能會有點難度 XD,打算之後改版來個簡單或者輔助的模式~

--

--