1. 程式人生 > >iOS——App打包並上傳至iTunesConnect過程

iOS——App打包並上傳至iTunesConnect過程

上傳至iTunesConnect有兩種方式:XCode和Application Loader

1. Application Loader

好處是方便和迅速,大約5分鐘左右完成上傳

首先build IPA時需要:

1. Distribution的Profile

2. Select a method for export 介面中,選擇第一個“Save for iOS App Store Deployment”


而一般build來給Device測試的話,選擇第二個(否則即使上傳成功,會在活動頁面中看到缺少Beta版許可權字樣,這樣無法進行TestFlight)

3. 然後就Export

4. 使用Application Loader上傳,注意,每次上傳的時候需要改版本號,在專案的Build選項中,從001開始計數即可

5. 如果成功,那麼可以在iTunesConnect頁面,你的App中->活動介面看到你上傳的版本

接下來介紹一些在上傳時會出現的Error以及解決方法

這涉及到使用Extension的注意事項:

使用的是SiriKit Intent Extension

其實是Bundle ID 的命名不符合規範

雖然SiriKit Extension和我們的App記憶體管理上算是兩個project,但他們存在一定的依賴性,所以命名Intent的時候需要注意

主App的Bundle ID :com.example.clare

那麼SiriKitIntent Extension的Bundle ID 需要為 com.example.clare.sirikitextension

這樣不會報錯


參考Link

http://blog.csdn.net/soindy/article/details/47186935


(2)上傳後超過30分鐘,iTunesConnect頁面中看不到你的版本

應該是失敗了,檢視AppleID的郵箱,蘋果客服會給你傳送失敗原因的郵件

以下是我上傳成功但在iTunesConnect頁面見不到版本碰到的兩種情況以及相應的解決方案

(2.1 )iOS10以後,需要在專案的plist檔案中新增下面宣告,否則上傳通過,但是稽核不通過

KEY: Privacy - Camera Usage Description 

VALUE:隨意

注意,VALUE必須有,否則還是失敗

宣告的Privacy由你的App需要使用的功能決定,新增Privacy之後Xcode會給提示自動補充,另外常用的還有Contacts,Location等

注意2:如果專案使用了Extension,則在Extension中也有info.plist的存在,以SiriKitExtention為例,這個plist中需要新增Siri Usage以及語音識別的Privacy,還要記得新增內容,否則失敗

(2.2) 檢視郵件報錯No example phrase was provided for INStartAudioCallIntent in the "zh-Hant" language

因為專案的預設語言為en,而在iTunesConnect中該App的描述預設語言為繁體中文,就會報上面的錯誤,所以需要將project 的Localization native development region設定為繁體中文“zh-Hant”

2. Xcode上傳

粗暴的,在Archive以後,直接選擇Upload to App Store即可,剩下只需要等,等等等等等