close

這次要上架遇到好多錯誤訊息,記錄一下,下次處理比較快。

 

 

錯誤訊息:"No matching provisioning profile found: Your build settings specify a provisioning profile with the UUID"

要嘗試 Archive 打包 APP 上架,不過出現這個錯誤訊息。網路上有介紹幾種解法,像是:

最後我是刪掉舊的 build folder 再重新 build 就好了。(刪除 Build Folder,我的做法是在 XCode → Widnow → Projects,找到要刪的專案,點選 "Derived Data" 後頭的 "Delete" 按鈕)

 

錯誤訊息:"Missing required icon file, the bundle does not contain an app icon of exactly 167x167 pixels in png format."

這次是要上架卻顯示沒有放 iPad Pro 需要的 icon 圖檔,補上就可以了。

方法是先點專案的基本資料頁,在 Generl 頁籤→App Icons→Source,點選右方的箭頭符號,會進入視覺化的圖片設定畫面,把 icon 檔放進來就好了。

我試過直接編輯專案目錄下的 Images.xcassets\AppIcon.appiconset\Contents.json,但是在 XCode 裡再點選 App Icons 的 Source 右方的箭頭,會出現 JSON 格式異常的錯誤訊息。

另外,我在 Windows 下製做了 167x167 的 icon,但存到了我們的 MacBook 裡就變小了(?),變成 152x152 pixel,不知道是忙中有錯弄錯檔案,還是怎麼了?後來是在 Mac 上安裝了 PhotoShop 直接修改圖檔解決。

 

 

錯誤訊息:"Missing iOS Distribution signing identity for..."

這是發布用的憑證到期了,到 Apple Developer 網站→進入個人帳號設定 (Account),進入選單裡的 "Certificates, Identifiers & Profiles",下載新的憑證,雙擊就會自動安裝到本機的 Key Chain(鑰匙圈存取)裡,順便把 Key Chain 裡的過期憑證刪除掉,同樣的把 WWDRCA 憑證也更新,再重新 Archive 就沒事了。

 

 

錯誤訊息:"Redundant Binary Upload. There already exists a binary upload with build version '1.1' for train '1.0' at SofrwareAssets/PreReleaseSoftwareAsset"

《Go To App — (Xamarin / iOS) App上架時,同一個Build不能上架2次》這篇提到,這個訊息是因為已經準備上架的程式,在還沒發布前,version 可以和上傳的版本一樣,但是 build version 要不相同。更改 Build 的數字後,再上傳一次,到 iTune Connect 做上架,就會看到有多個檔案可供選擇,再從中選自己真正要發布的那個 Build 來送審就好。

 

錯誤訊息:"This Action could not be completed. Try Again (-22421)"

我從 Xcode > Product > Archive,將 APP 封裝完畢後,點選畫面最右邊的 "Upload to App Store",一陣驗證檢查後出現這個訊息。在 stackoverflow 上的 "This action could not be completed. Try Again (-22421)" 這篇是認為 "This happens because Apple's servers may not be working correctly. Just wait and try later or next time. It will work for sure eventually."(這是因為 Apple 的 server 未正確院作。稍晚再試一次,之後就好了。)

但因為我怎麼試它都不好,之前在做 validate 時有過兩個同時發生的錯誤訊息:

  • "An error occurred. The operation couldn’t be completed. (ITunesSoftwareServiceAuthenticationErrorDomain error 434.)" 
  • "iTunes Store operation failed. This action could not be completed. Try again."

"I received the error on multiple attempts. Archive Validation failed with errors" 這篇是建議 Xcode > Product > Archive,不要選 validate,而是選它隔壁的 Export,把 IPA 檔匯出來,再從 Xcode > Xcode(選單第一項)> Open Developer Tool > Application Loader,從這裡上傳 iPA 檔。

 

狀況:完全無法 Archive

在準備把同事提供的 APP 原始碼包版上架時,發現 Xcode > Product > Archive 沒辦法使用。

搜尋一下找到 "Archive button grayed out in Xcode 7",原來是裝置要設成 "Generic iOS Device",不能設成任何模擬器。Orz

 

錯誤訊息:ERROR ITMS-4238: Redundant Binary Upload. There already exists a binary upload with build version '2.4' for train '2.4.9' at SoftwardAssets/PreReleaseSoftwareAset

同一個版號已經上傳過了,改個版號就沒事了。

 

狀況:無法看到新建置的版本

從 XCode 的 Organizer 視窗,選擇 "Upload to App Store" 上傳到 iTunes Connect 後,在 iTunes Connect 的「建置版本」一直看不到新版本。

目前經驗大概要等大約 10 分鐘左右,才會顯示「提交 App 之前請先選取建置版本」、或是「建置版本」旁邊會有一個帶圓圈的加號 (+),點下去可以選擇版本。

 

狀況:透過 XCode 的 Archive 執行 Distribute APP,停在 "verifying assets with the iTunes store" 無法繼續往下執行

在 XCode 選了 "Distribute APP > iOS App Store > Upload",進度一直停在 "Verifying assets with the iTunes store" 無法繼續往下執行。

在 stackoverflow 的 "Application loader stuck at the stage of “Verifying assets with the iTunes Store”" 這篇有人提到可能是因為在 iTunes Connect 裡有任何的授權協議沒有通過 (Make sure no pending contracts are waiting to be signed/accepted)。

我看了一下,果然我還有一些稅務方面的協議要更新,但在勾完同意書後,還出現了「待處理的使用者資訊」的黃色燈號,但不管我怎麼填公司戶頭資料進去,還跟財務確認過帳戶資料,但系統都說是「帳戶持有人姓名無效」,哭了哭了。本來還以為是 Apple 跟銀行接驗證,後來才發現銀行資訊的「帳戶持有人姓名」要和「協議、稅務與銀行業務」這頁的「法律實體」同名,所以亂填也是會過的,重點是要「帳戶持有人姓名 = 法律實體」啊。

但填完後一度以為還是要等 24 小時左右才會生效(後來發現是那些聯絡資訊欄位通通都要寫,什麼高階主管、法務、行銷什麼的,至少要選目前的開發者聯絡資訊填進去,填完就好了),所以我打算改成用 "Distribute APP > iOS App Store > Export",再手動傳上去。

結果!從 Xcode 打開 "Open Developer Tool > Application Loader",要登入時竟然不讓我用開發者帳號登入呢,說是 “Please sign in with an app-specific password. You can create one at appleid.apple.com”。

這個 APP 專用密碼在登入 appleid.apple.com 之後,在「安全 > App 專用密碼」可以取得。(密碼會由 Apple 自動產生,不用自己想)

"Verifying assets with the iTunes store" 這個訊息除了前述提到的,開發者帳號有授權協議沒有把 accept 點好點滿,還有一種狀況是被公司防火牆給擋了,改用自己手機連外部網路就過關了,大概一分鐘左右就進入上傳作業。

 

狀況:取得 iOS 的螢幕截圖

在 APP Store 上架時需要提供 5.5 吋與 iPad Pro 2 代的 screenshot。

以前我都按 Command-Shift-4 自己拉半天,後來才從《iOS App 畫面的螢幕截圖》這篇知道可以從模擬器直接產生截圖:Simulator > File > New Screen Shot。

 

狀況:測試深色模式 (dark mode)

因為 iOS 13 新增深色模式 (dark mode),有些色彩配置在切到深色模式後會被吃掉。

要使用深色模式就是在 XCode 模擬器裡,先回到手機桌面,把 Settings > Developer > Dark Appearance 打開。

我一直在 Simulator 的選單裡找半天,沒想到就只是跟一般 user 一樣設定就好了⋯⋯不過用 iPhone 11 Pro MAX 模擬器,對我更大的困難是沒有 HOME 鍵,回不到桌面。這個時候就真的是要用 Simulator 選單上的資源了:在 Hardware > Home,就有點選 HOME 鍵的效果了。

arrow
arrow
    文章標籤
    ios app
    全站熱搜
    創作者介紹
    創作者 小攻城師 的頭像
    小攻城師

    小攻城師的戰場筆記

    小攻城師 發表在 痞客邦 留言(0) 人氣()