AppStore審核被拒原因及解決辦法

日前蘋果開發(fā)者官網(wǎng)發(fā)布了中文版的AppStore審核指南,還羅列出了一些常見被拒情況,這無疑方便了我們這些天朝程序員,畢竟最近我就是提交了一款應(yīng)用被拒了數(shù)次。當然審核指南里面也只是大概敘述了一些被拒原因,并沒有將具體的解決方案提供出來,你也可以提供聯(lián)系方式,蘋果方面會讓一位精通中文的客服聯(lián)系你,協(xié)助你解決問題。其實,還是自己了解原因,及時解決的好。下面我就將自己實際開發(fā)中提交審核被拒的原因以及網(wǎng)上搜集的被拒原因羅列出來,并附上具體的解決辦法。


1.應(yīng)用中包括應(yīng)用內(nèi)購支付內(nèi)容,審核被拒

被拒原因截圖

這個內(nèi)容核心在于蘋果方面認為這款應(yīng)用是有損蘋果利益分成的,并且沒有找到公開的賬號注冊的入口,和微信打賞功能一樣,蘋果認為他的利益受到了損害.
換言之,蘋果在應(yīng)用內(nèi)購方面條款寫的比較露骨:蘋果公司僅能通過內(nèi)購這一種形式獲得收益。所以特別介意這種沒有注冊功能的應(yīng)用,它擔心貴公司通過其他途徑出售賬號,然后登錄iOS應(yīng)用內(nèi)使用功能。
如果貴公司的應(yīng)用并不屬于上述范疇,或者注冊功能隱藏較深??梢酝ㄟ^文字說明使用步驟,并在審核時,添加附件視頻操作教程。把這些內(nèi)容填寫在App審核信息右側(cè)的備注區(qū)域(就是寫演示賬戶密碼那塊的右邊備注:“對審核過程會有所幫助的、有關(guān)您 App 的額外信息, 包括在測試中需要的 App 特別設(shè)置等?!保├锩嫣峤痪秃?。
如果提交的應(yīng)用屬于上述范疇,可能需要和產(chǎn)品經(jīng)理好好溝通一下了。

2.允許使用App的用戶生成自定義內(nèi)容,卻沒有適當?shù)念A(yù)防措施。

被拒原因截圖

被這個原因拒絕,大多是因為你的App中包含了類似微信朋友圈的功能,用戶可以自定義發(fā)布文字信息和圖片,卻沒有任何防范措施。

解決辦法:

1.必須要有完整并且詳細的用戶許可協(xié)議(EULA),你可以把協(xié)議內(nèi)容放到用戶注冊登錄的首界面,用戶不同意就無法使用該App,協(xié)議內(nèi)容可以參考和你分類相同的其它應(yīng)用。
2.為應(yīng)用增加投訴舉報和拉黑功能。
總而言之,在用戶可以自定義發(fā)布內(nèi)容之前,你可以考慮彈框提醒用戶必須要遵守用戶協(xié)議,否則無法發(fā)布任何內(nèi)容。我之前因為這個原因?qū)徍吮痪芎?,收到了蘋果客服的電話,明確告知我,每個展示自定義內(nèi)容的條目,都必須有一個舉報按鈕,App還必須有拉黑模塊,類似黑名單功能。當然,你把舉報和拉黑放到一起也是可以的,但是在審核的備注信息,必須詳細解釋。
 重要的事情說三遍,其實我的舉報和拉黑功能,只是裝裝樣子,裝裝樣子,裝裝樣子
點擊按鈕,出現(xiàn)的舉報和拉黑界面

3.登錄方式比較單一,自身沒有完整的注冊登錄流程系統(tǒng),例如只提供微信授權(quán)登錄,登錄必須要依賴于其它第三方App

被拒原因截圖

蘋果方面認為你的應(yīng)用門檻過高,用戶需要安裝其它第三方應(yīng)用才能登錄你的App,雖然在天朝幾乎人人手機都有微信和QQ,但是審核人員都是在美國,不保證他們的設(shè)備裝有微信和QQ,還有個坑就是即使你在Xcode設(shè)置了Devices只包含iPhone,但是他們還是會用iPad安裝測試你的App。

解決辦法 :

1.老生常談的辦法就是,判斷設(shè)備是否安裝有微信或QQ,如果沒有,就隱藏微信登錄或QQ登錄的按鈕,這個方法大概16年的時候還可以通過審核,但是我在網(wǎng)上搜集資料,說是該辦法已經(jīng)無法通過審核。
2.第二個辦法是我親自試過的,最近也通過了審核,我們的產(chǎn)品設(shè)計甚至只有微信登錄一種方式(產(chǎn)品還死犟絕對可以通過審核,結(jié)果審核被拒,啪啪打臉,有些人坑,坑的讓你無fuck說)。這個辦法就是,如果你的線上版本,必須只有微信登錄這一種方式的時候,但是審核的時候你需要給審核人員提供一個游客登錄的方式,讓你的接口同事幫幫你吧,寫一個簡單的接口,根據(jù)接口的返回值是否顯示游客登錄的按鈕,線上不顯示,審核顯示.

4.應(yīng)用中包含應(yīng)用更新功能被拒

被拒原因截圖

這個被拒原因現(xiàn)在基本上很少見了,現(xiàn)在AppStore的所有熱門應(yīng)用,都有提示用戶更新的功能,像牛逼的12306App,你不更新,就用不了,別說你不坐火車和高鐵。如果因為這個原因被拒,只能說明你的提醒太頻繁了,讓審核人員覺得如果用戶不更新新版本,就會一直重復(fù)提示,這和強制更新沒什么區(qū)別。盡量讓用戶進入首界面后再提示有新版本更新,還有如果你的提示更新功能不是根據(jù)后臺接口返回值判斷的,而是根據(jù)本地對比AppStore信息,那么希望你用下面的代碼去判斷.

NSDictionary *infoDict = [NSBundle mainBundle].infoDictionary;
NSString *app_Version = [infoDict objectForKey:@"CFBundleShortVersionString"];

5.采集設(shè)備IDFA但應(yīng)用沒有廣告功能

審核必經(jīng)之路

用戶在提交應(yīng)用審核的時候,都有一個選項讓你選擇是否包含廣告標識符,這個選項我一般都選擇是,一般情況下,如果你的App中集成了友盟或者ShareSDK之類的第三方SDK,一般選擇“是”是絕對沒有問題的,當前友盟的SDK也分為包含IDFA版的和不包含IDFA版本的,這個是你在集成前需要考慮的,友盟的官方文檔寫的也非常詳細。網(wǎng)上搜索檢查應(yīng)用中是否采集IDFA的教程一大堆,自己去查查吧.

6.應(yīng)用在iPad上不能正常顯示或運行

因為iPhone和iPad都是iOS系統(tǒng),所以它們都可以在AppStore下載應(yīng)用。就算你在編譯器設(shè)置了只支持iPhone,但是iPad同樣可以安裝你的應(yīng)用,這就帶來了一個坑,你必須也要適配iPad的機型界面,否則導(dǎo)致部分界面不能正常顯示或者顯示不全,你的應(yīng)用就會被拒絕,經(jīng)常會在被拒絕的附件截圖里面看到iPad的截圖,所以在界面適配的時候注意這一點,純代碼或者故事板都要做好。

7. 你的App中引入或推薦了一些不屬于你們自身的應(yīng)用信息,原文如下:

Apps may display and recommend apps other than your own only if the collection is designed for a specific approved need (e.g. health management, aviation, accessibility, etc.) or provides significant added value for a specific group of customers, or they will be rejected

這個被拒原因是因為你提交的App中,包含了一些其它應(yīng)用信息,這些應(yīng)用不屬于你們,這就需要在相關(guān)頁面加入授權(quán)協(xié)議。防止侵權(quán)或被投訴,這些都是授權(quán)協(xié)議里需要提到的。最好還是不要出現(xiàn)或推薦其它應(yīng)用,除特殊情況,蘋果明令禁止應(yīng)用內(nèi)推薦其他APP。

8.在檔案和安卓市場涉及到了android平臺,這是蘋果不允許的。原文如下:

In addition, we noticed that your app contains irrelevant platform information in 檔案 and 安卓市場. Referencing third-party platforms in your app or its metadata is not appropriate on the App Store.

解決辦法:刪除任何提及“安卓市場”的字眼,修改或刪除涉及“安卓市場”的界面。這個問題解決很簡單.

9.需要登錄才能正常使用的應(yīng)用,缺少一個演示賬戶,展示應(yīng)用的相關(guān)功能完整性。原文如下:

We were unable to sign in to review your app with the demo account information you provided. In order for us to review your app, please provide us with a functional demo account so that we may fully assess your app's features

演示賬戶

解決辦法:在上圖中,為審核人員,提供一個用于操作App的演示賬戶,以手機登陸的App,需要提供一個手機號,手機號給一個測試賬號用的,不需要短信驗證碼,密碼和后臺商量給一個固定四位或六位數(shù),這些你都必須在備注里說清楚。

10.如果你的應(yīng)用包含后臺定位和讀取或?qū)懭虢】禂?shù)據(jù),都必須在提交審核的時候,在應(yīng)用描述里向用戶表明,給你兩段話。

1.本應(yīng)用包含HealthKit,支持App Health應(yīng)用,經(jīng)過用戶允許后,可將Health應(yīng)用的運動數(shù)據(jù)同步到該App。

2.使用“XX”功能,會持續(xù)使用GPS定位服務(wù),切換到后臺仍會保存GPS連接,相比其他操作會消耗更多的電量。

如果想確保審核通過,最好錄制一個應(yīng)用持續(xù)后臺定位場景視頻,這個視頻真的不用很麻煩,推薦你一個工具蘋果錄屏專家,不過這個工具是有試用期的。把你的App裝到手機,打開錄屏專家,再打開你的App錄制就好了,錄好了,直接附件上傳。很方便

11.使用第三方地圖SDK,比如百度地圖,不需要再導(dǎo)入蘋果的MapKit.framework。

12.某些應(yīng)用的銷售地區(qū)限制(Your app contains content - or facilitates, enables, and encourages an activity - that is not legal in all of the locations in which the app is available.)原文如下:

被拒原因截圖

這個原因,我仔細分析過,是在提交應(yīng)用的時候,價格和銷售范圍選項中,銷售范圍選擇了具體的某些國家或地區(qū),所以需要你在打開應(yīng)用或使用應(yīng)用的過程中,判斷當前地理位置是否在銷售或服務(wù)范圍內(nèi)。比如你的應(yīng)用,只支持在中國地區(qū)銷售,那么香港和澳門特別行政區(qū)都不能使用和打開你的App,你的用戶協(xié)議和服務(wù)協(xié)議也必須說清楚,否則蘋果會認為你的應(yīng)用容易出現(xiàn)一些法律糾紛,某些股票或貴金屬類的應(yīng)用,會有這樣的銷售范圍限制。

13.應(yīng)用作者名與金融機構(gòu)名字不一致

針對理財、P2P等金融相關(guān)產(chǎn)品,蘋果增加規(guī)定
開發(fā)者的名字必須與APP內(nèi)的金融機構(gòu)名字保持一致,否則會被拒。
且由同一品牌的金融機構(gòu)提供服務(wù)的APP,必須發(fā)布在同一個開發(fā)者賬號跟名稱下。

如果你已經(jīng)代表委托人或者公司發(fā)布了這些APP,你的委托人或者公司應(yīng)該注冊iOS開發(fā)者賬號,并把你添加到他們的開發(fā)者賬號里,這樣你就可以在他們賬號下面提交并發(fā)布APP了。


和開發(fā)者賬號有關(guān)的其它內(nèi)容

1.極光推送鑒權(quán)方式切換

之前使用極光推送,需要根據(jù)環(huán)境使用開發(fā)者賬號分別生成一個開發(fā)環(huán)境推送證書和生產(chǎn)環(huán)境推送證書,將證書下載下來導(dǎo)入鑰匙串訪問,然后再將證書導(dǎo)出為一個后綴為p12的文件。在極光推送配置里將這兩個P12文件添加進去,這種方式比較麻煩,而且需要檢查證書是否過期,否則極光推送服務(wù)就會中斷。這種鑒權(quán)方式為證書鑒權(quán)?,F(xiàn)在極光又推出了另一種鑒權(quán)方式-Token Authentication


鑒權(quán)方式

使用Token Authentication的鑒權(quán)方式,就需要配合使用開發(fā)者賬戶中證書里面的一個新功能,如下圖所示


Certificates, Identifiers & Profiles

這個key生成的是一個后綴為P8的文件,用來在推送設(shè)置中綁定KeyID,TeamID和BundleID。KeyID就是這個Key的對應(yīng)ID,TeamID就是你開發(fā)者賬戶的ID(登錄開發(fā)者賬戶后,直接在當前網(wǎng)頁的網(wǎng)址鏈接中就可以看到,MemberShip中也可以找到),BundleID是你App的ID。

使用這種鑒權(quán)方式,永遠不必擔心推送過期的問題,因為它是永久性的。

2.想為自己的應(yīng)用,添加一個描述性的備注,例如下圖

WechatIMG54.jpeg

我真的看到過有人試圖修改Display name來達到這種效果的,而且蘋果對App名稱是有字數(shù)限制的,根本不可能寫這么長.其實很簡單,在iTunes Connect中的App信息修改就行了,如下圖所示


Jietu20170913-145557.jpg

先羅列這么多,很多被拒原因在網(wǎng)上都能找到解決辦法,我只是舉例了幾種比較常見并且是我本人親身遇到的情況,后續(xù)再遇到棘手的被拒問題,我找到了解決辦法,也會第一時間更新。
如果你有任何AppStore審核的問題以及關(guān)于開發(fā)者賬號申請,續(xù)費,轉(zhuǎn)讓App,證書錯誤的問題,也可以在文章底下留言。


有關(guān)應(yīng)用中接入了HealthKit、TestFlight、Apple Pay的審核建議

1.HealthKit

使用HealthKit或者ResearchKit框架(出于健康目的用于進行人體生物學研究的框架)的應(yīng)用程序,必須遵守其所有適用區(qū)域的法律,以及iOS Developer Program License Agreement中的3.3.28和3.39條款。(增加了對于ResearchKit框架的支持)

將虛假或者錯誤的數(shù)據(jù)寫入HealthKit的應(yīng)用程序?qū)痪芙^。

使用HealthKit框架的應(yīng)用程序在iCloud中儲存用戶健康信息將會被拒絕。

應(yīng)用程序不允許將通過HealthKit API收集的用戶數(shù)據(jù)用作廣告宣傳或者基于使用的數(shù)據(jù)挖掘目的,除了改善健康、醫(yī)療、健康管理以及醫(yī)學研究目的。

未經(jīng)用戶許可與第三方分享通過HealthKit API獲得的用戶數(shù)據(jù)的應(yīng)用程序?qū)痪芙^。

使用HealthKit框架的應(yīng)用程序必須在營銷文本中說明集成了Health app,同時必須在app用戶界面清楚闡釋HealthKit的功能。

使用HealthKit框架的應(yīng)用程序必須提供隱私政策,否則將會被拒絕。

提供診斷、治療建議,或者控制診斷疾病的硬件,或者治療疾病的應(yīng)用程序,若沒有根據(jù)要求提供書面的監(jiān)管審批,將會被拒絕。

收集人體生物學研究相關(guān)數(shù)據(jù)的應(yīng)用程序必須要獲得參與者的許可,對于未成年人,應(yīng)用程序要得到其父母或者監(jiān)護人的許可。許可內(nèi)容必須包括:(a)研究的性質(zhì)、目的以及持續(xù)性;(b)參與流程、風險以及受益(福利);(c)信息的機密性和數(shù)據(jù)處理(包括與任何與第三方的共享);(d)參與者問題切入點;(e) 取消方法(新增)

2.TestFlight

應(yīng)用程序僅能使用TestFlight對以公開發(fā)布為目的的應(yīng)用進行beta版測試,且必須遵守完整的App Review Guidelines。

當版本中包含的內(nèi)容或功能有重大變化時,使用TestFlight的應(yīng)用程序必須提交審核。

使用TestFlight的應(yīng)用程序不允許分發(fā)給測試者,以作為任何形式的補償。

3.Apple Pay

使用Apple Pay的應(yīng)用程序必須在出售任何商品或者服務(wù)之前為用戶提供所有材料的購買信息,否則將會被拒絕。使用Apple Pay進行定期付款的應(yīng)用程序必須提供最低限度續(xù)費期限,付費將持續(xù)直至被取消,每個階段所付款額,費用付款歸屬,以及如何取消等。(增加了對于定期付款的規(guī)定)

使用Apple Pay的應(yīng)用程序必須正確使用 Apple Pay Human Interface Guidelines 中的Apple Pay標識和用戶界面元素,否則將會被拒絕。

使用Apple Pay作為購買機制的應(yīng)用程序所提供的商品或服務(wù)不能觸犯任何交付地范圍內(nèi)的法律,也不能用作任何非法目的。

使用Apple Pay的應(yīng)用程序必須提供隱私政策,否則將會被拒絕。

只有為了促進或提高商品和服務(wù)的交付,或者依照法律要件,使用Apple Pay的應(yīng)用程序才能與第三方分享通過Apple Pay獲得的數(shù)據(jù)。

精通醫(yī)療類,互聯(lián)網(wǎng)金融類App過審,游戲類馬甲包上架. QQ: 455525201

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容