iOS app提交給Apple審核,總是會遇到很多審核不通過的憂傷情況,專門收集了網上大家及我的項目中提交APP至app store被拒的原因.
首先我們要認真閱讀官方的APP Store審核指南
App Store審核指南 https://developer.apple.com/app-store/review/guidelines/

主要錯誤 :
1.元數據錯誤
2.程序有重大bug
3.應用審核存在較明顯的測試數據
4.更新版本
5.VIP 會員 繞過蘋果的付費渠道
6.應用評級與內容不符
7.啟動頁報錯
8.瀏覽網頁
9.技術支持地址
10.關於對js交互問題
11.關於ipv6問題
12.項目無iPad 適配問題(2.4性能:硬件兼容性)
13.項目無注冊問題(2.1性能:應用程序完整性)
14.項目原本沒問題但是蘋果拒了,可以添加視頻操作網址
15.90174問題, 缺配置文件或者設置問題.
16.u選項必須具有非空值。 The u option must have a non-empty value.
17.應用程序不符合使用蘋果商標和版權的指南 5. 2.5 Legal: Intellectual Property - Apple Products
18.Logo、副標題及關鍵詞不可出現商品定價相關的詞匯
19.App的是否有付費內容或服務
20.公司同類產品Guideline-4.3
21.使用App內購以外的支付機制解鎖APP內的功能
22.定位、相機等權限描述問題
23.數據收集和存儲
24.可接受的商業模式
25.SNS類型的APP,缺少舉報、拉黑、投訴功能
26.應用開啟了后台權限但審核時未發現運用到
27.應用內涉及抽獎功能被拒
28.敏感詞問題
29.應用預覽圖與應用內容不符
30.其他大致被拒原因
三十. 其他大致被拒原因
以下這些類,基本也就只能放棄該二進制包了,重新修改功能及頁面重新上線一個新APP了。
1)1.1.6 內容虛假,錯誤,不當內容,內容包含誘導用戶的內容
2)2.5.4 app使用位置后台模式,用於其預期目的
3)3.2.2 商業模式不符合,業務模式不可接受
4)4.1 侵權
5)4.2 app太簡單/功能和蘋果的相沖突
二十九. 應用預覽圖與應用內容不符
主要是APPStore預覽圖與APP內容不符
** 解決方案:**
更換相關圖片,圖片內容必須包含應用內內容(一般是1.0版本遇到較多)。
二十八. 敏感詞問題
主要是涉及敏感詞
解決方案:
當上傳的IPA包中,內容存在相關收錄的敏感詞時,需全部清除所涉敏感詞,例如黃、賭、毒等。
二十七. 應用內涉及抽獎功能被拒
主要是未申明活動與蘋果官方無關。
解決方案:
應用內有抽獎的運營活動功能時,獎品不要包含評估相關產品,且聲明活動與蘋果官方無關。
二十六. 應用開啟了后台權限但審核時未發現運用到
2.3.1 app包含隱藏、休眠或未記錄的功能,包括可重定向到賭博或彩票網站的隱藏“開關”
解決方案:
如應用后台開啟了音樂、定位等功能,但是審核時審核人員未發現應用內用到相關功能,此時需要修改或者提供說明該功能所用之處。
二十五. SNS類型的APP,缺少舉報、拉黑、投訴功能
有審核不通過的概率
解決方案:
一旦審核被拒最佳方案是APP端添加一個跳轉入口在JS網頁去處理,實際功能可以不做,但是要有相關功能入口;重新上傳新包再次提交審核,告知舉報功能位置即可。
二十四. 可接受的商業模式
5.2.1 app或者app中的某個功能,公司不具有這個資質;
主要是沒有資質。
解決方案:
最佳方案是拿到資質,如果實在沒有資質,建議大家盡可能多的把自己公司合規的證據資料發給蘋果,而套殼、換新賬號碰運氣上架等操作,不得已的話可以嘗試。
二十三. 數據收集和存儲
主要是App強制用戶注冊,且基於不需要用戶信息的功能之上、暗中采集/共享用戶的個人信息。
解決方案:
先與用戶協商,讓用戶同意后注冊,有“強登陸”功能的一定要修改為提示登陸的版本。
二十二. 定位、相機等權限描述問題
主要是 App 未得到允許,與第三方共享收集的用戶數據,且並未說明使用目的等,例:定位、相機、藍牙等權限。
解決方案:
如果要采取用戶數據信息,需要給予用戶提示,並得到用戶的允許,或設置為可選,並且明確告知蘋果采集用戶數據信息的使用目的。
總的來說就是要彈出提示說明使用這個權限做什么用,寫清楚即可。
二十一. 使用App內購以外的支付機制解鎖APP內的功能
3.1.1-Use payment mechanisms other than in-app purchase to unlock features or functionality in the app
解決方案:
建議郵件回復我們App內都是使用的蘋果支付,並沒有使用任何第三方支付。(一般游戲App虛擬產品遇到較多)
二十. 公司同類產品Guideline-4.3
就是經典的 Guideline 4.3 - Design , 說我們已經有相同功能的 App 啦,認為我們復制了其內容或功能會造成混亂,會降低終端用戶的整體體驗的。
—> 一般公司項目里同類產品會遇到該問題。
解決方案:
策略可並行兩條路子:
1、繼續和蘋果郵件交流,告訴他們我們的產品是不一樣的,銷售的地區也不一樣,目前也得到回復的。
2、申請另一個蘋果賬號,通過修改應用名字BundleID、主icon、換膚、主色調、代碼混淆等解決,必要時可通過增加其他無用內容,過審后隱藏。
PS: 發現類似 Guideline 2.1 - Information Needed 這種以后還是要在備注說明中也寫下的,防止不是上次審核人員的,然后隔一次以相同理由被拒的。
十九. App的是否有付費內容或服務
—> 項目中遇到:
- Does your app access any paid content or services? - What are the paid content or services? - Do individual customers pay for the content or services? - If no, does a company or organization pay for the content or services? - Where do they pay, and what's the payment method? - If users create an account to use your app, are there fees involved? - How do users obtain an account?
解決方案:
建議回復郵件,也其實可以在上傳審核時就在備注里根據產品大大提供的文案添加:
- 你的應用程序可以訪問任何付費內容或服務么?
答:可以,我們的APP主要服務包括:XXX。用戶使用App可以訪問任何付費內容或非虛擬服務。 - 付費內容或服務是什么?
答: APP的付費內容為:XXX。內容包括XXX等。由XXX提供,非虛擬服務。 - 個人用戶是否為內容或服務付費?
答:個人用戶需要為內容或非虛擬服務付費。個人用戶產生使用AppXXX需求時,同樣需要為內容或非虛擬服務付費,方可使用非虛擬服務。 - 如果用戶創建了一個賬戶來使用您的應用,是否需要付費?
答:如果用戶創建了一個賬戶來使用我們APP,用戶可根據自我意願進行選擇性付費。我們App無強制性付費內容。 - 用戶如何獲得賬戶?
答:客戶是通過手機號獲取驗證碼注冊登錄的。
十八. Logo、副標題及關鍵詞不可出現商品定價相關的詞匯
2.3.7 在應用程序商店中不適用於在應用程序名稱或副標題中提及您的引用程序或其提供的服務的價格。

項目中遇到:
Logo及副標題中均有“免費3個月”,后又改成“試用3個月”,蘋果均認為都含有商品定價信息。
解決方案:
從應用的字幕中刪除所有對定價的引用。如果您想宣傳對應用服務價格的更改,請考慮在應用說明中包含此信息。
十七. 應用程序不符合使用蘋果商標和版權的指南
5.2.5 Legal: Intellectual Property - Apple Products
您不得在或與網站、產品、包裝、手冊、促銷/廣告材料有關的情況下使用Apple徽標或其他Apple所有的圖形符號、徽標或圖標,或用於任何其他目的,但根據Apple的明確書面商標許可(如轉售協議)除外。
解決方案:
logo等相關內容不得采用iPhone——蘋果商標,圖像或相似的應用程序圖標
十六.u選項必須具有非空值。 The u option must have a non-empty value.
今天更新迭代上傳APP時用application loader上傳到AppStore上去,打包之后上傳的時候報錯,用的是Xcode9.0,如下:
1.the u option must have a non-empty value 2.the password must have a non-empty value
解決方案:
1.去iTunes connect更新application loader的dmg
2.更新Xcode9.0升級到9.1的版本,9.1附帶的application loader是鐵定是新版本的
十五. App90174問題, 缺配置文件或者設置問題.
ERROR ITMS-90174: "Missing Provisioning Profile - Apps must contain a provisioning profile in a file named embedded.mobileprovision."
解決方案:
- 查看證書是否過期, 在keychains里選擇login,然后點選Certificates,在這個界面,選擇工具欄的View -> Show Expired Certificates,刪除過期的“WWDR Certificate”(Apple Worldwide Developer Relations Certification Authority); 在System的那一欄也要刪除過期的“WWDR Certificate”。不出意外你的證書那里從 “This certificate has an invalid issuer”(此證書的簽發者無效)變成了 “This certificate is valid”了.
- 新建發布證書ios_distribution.cer和描述文件Distribution.mobileprovision,准備好這兩個文件后就到Xcode選取設置.
- 如果還是不行的話, 就去這個路徑下把所有描述文件全刪了
~/Library/MobileDevice/Provisioning Profiles
, 然后重啟xcode再重新裝描述文件應該就能解決了.
十四. 項目原本沒問題但是蘋果拒了,可以添加視頻操作網址
其實我們引導頁沒有明確的點擊進入按鈕, 但是我們又全屏的手勢點擊進入 APP, 但是蘋果審核並不值得,很奇葩的拒了!
郵件上說:2.1性能:應用程序完整性, 我們發現你的應用程序的一個或多個錯誤,當回顧在 iPhone運行 iOS 10.3.3WiFi連接到IPV6網絡上. 具體來說, 你的應用程序在最初的屏幕啟動后沒有采取任何行動,我們無法繼續,無法繼續.
建議:添加視頻操作網址鏈接
回復郵件: 告知這個 APP 是在引導頁后直接全屏點擊 手勢點擊進入 APP 的. 是可以屏幕任意地方點擊進入的. 並且讓后台上傳視頻操作, 然后郵件添加網址鏈接即可.
十三. 項目無注冊問題(2.1性能:應用程序完整性)
蘋果那邊會發來郵件通知, 根據2.1性能:應用程序完整性, 提出產品缺陷不完整問題.
此外,請提供下列問題的資料,供我們繼續進行審查:
-誰是你的應用程序的目標受眾?
-這個應用程序只針對一家公司的內部員工嗎?如果是的話,公司的名稱是什么?
-用戶如何接收用戶名/密碼?
建議:回復郵件, 也其實可以在上傳審核時就在備注里添加:
1.誰是你的應用程序的目標受眾?
————(回答你們的目標受眾)
2.這個應用程序只針對一家公司的內部員工嗎?如果是的話,公司的名稱是什么?
————不是
3.用戶如何接收用戶名/密碼?
————通過郵件方式
4.該APP無外鏈,采數據
十二. 項目無iPad 適配問題(2.4性能:硬件兼容性)
一般我們 APP 僅僅支持 iPhone, 並未適配 iPad, 這個時候被拒,即使我們發郵件告知並不支持 iPad 也沒用, 聽我蘋果還是會回復郵件: 對於2.4.1問題,請注意,即使你的應用程序是專門為iPhone用戶仍然可以使用您的應用程序在iPad上.
建議:
針對蘋果截圖發來的界面 適配即可.
十一. 關於ipv6問題
目前協議上並未強制要求使用 ipv6, https如果目前暫未使用, 就需要把一些第三方的使用全部更新到能支持 ipv6的版本.
一般像有友盟和第三方解析圖片的框架SDWebImage這塊使用的話一定要更新到支持ipv6的版本.
建議:還是盡快使用 ipv6,畢竟后面還是躲不過的, 需要后台配置證書了.
十. 關於對js交互問題
現在對js交互審核比較嚴,雖然沒有明確提出,但是遇到就給你發開發者協議2.5.2和3.3.2
建議:盡量不要有 h5交互, JavaScriptCore.framework這個庫盡量刪掉
九. 技術支持地址
- 不要寫微博這種地址
原因是:不能將需要登陸才能訪問的網址作為技術支持地址。 - 技術支持網址打不開
原因:蘋果打不開,郵件Service Unavailable. HTTP Error 503. The service is unavailable.
八. 瀏覽網頁
瀏覽網頁,必須使用iOS WebKit框架和WebKit JavaScript
七.啟動頁報錯

這個時候需要先檢查圖片尺寸是否正確,接着清空 Launch Screen File ,上面 Launch Image Sourc里 不再選擇Brand Assets.

注意: 當未設置default頁,啟動畫面為黑屏,也有一定概率被拒絕。
六. 應用評級與內容不符
之前一個朋友做過一個app是婚戀類型的 更適合成人觀眾。年齡設置太低,說是有成人內容,被拒.修改內容后上線.
上架失敗,郵件回復:您選擇的評級,4 +,與您的應用程序的內容不一致。由於你的應用程序主要是一個約會應用程序,它更適合成人觀眾。因此,你必須選擇一個“刺激”設置為“成熟/暗示性主題”在iTunes Connect。
解決方案:
合理調整評級,對相關敏感內容進行清理整改,一定不能故意降低評級。

五. VIP 會員 繞過蘋果的付費渠道
繞過蘋果的付費渠道,我們目前項目里的有個vip功能涉嫌應用內收費, 但僅僅是微信支付和支付寶支付, 並未使用蘋果支付,直接被拒,返回郵件就是會員界面截圖.
解決方案:
和更新版本思路一樣:線上打開,審核期間去屏蔽相對應線上版本的. 需要接口提供一個字段,審核的時候是0,上線后是1.
四. 更新版本及強制更新
--> 4.1 更新這是敏感字眼,蘋果審核可謂見光必殺,那我們的產品大大要求必須和安卓一致需要這些功能.
解決方案:
等待審核及審核期間,相對應版本審核的時候是0,上線后修改狀態為1。
--> 4.2 更新存在引導用戶更新應用被拒。
解決方案:
當應用中存在更新提示彈窗時,需設置開關,審核過后放出,否則被認定為引誘用戶更新。
三. 應用審核存在較明顯的測試數據
注意:
任何數據同樣不要有“試用”,“演示”,“試用”,或“測試”版本 字眼,一定要跟數據相關同事說好,上線時候正式庫的數據、測試字眼英語單詞哪怕拼音最好也不要出現,會被拒的。
二. 程序有重大bug
程序不能啟動,或者中途退出。程序若有crash被拒.修改bug后重新上線即可.千萬避免這種情況,上架前都要測試 OK.
一. 元數據錯誤
- 測試賬號壓根登錄不上去,這就坑啥了! so, 提前和 server 同事說好,不要刪除測試賬號 或者 上線審核過程中務必不要正式數據庫崩潰!
- 當截圖僅僅是啟動頁或者引導頁(歡迎頁)截圖時,蘋果會認為 APP 截圖展現沒有充分反映您的應用程序使用。
請修改您的截圖,以確保他們准確地反映在使用的應用程序。 - 2.3.3錯誤提示, 采用屏幕預覽或者截圖時, iPhone X (5.8寸)的一定要與5.5寸的相同一致的,否則就會提示您為 iPhone 5.8提交的截屏沒有准確反映該設備上運行的應用程序. (目前 iPhone X 的可選填是否上傳截圖).
注意:因為你的iTunes Connect狀態是元數據的拒絕,不需要一個新的二進制。只需要重新100%的 command + S 去模擬器截圖 APP 內容.
更多APP被蘋果拒絕的原因,待收集補充。
作者:smile麗語
鏈接:http://events.jianshu.io/p/7f2ba34de4d8
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。