iOS應(yīng)用提交審核一些注意事項(xiàng)

蘋(píng)果的應(yīng)用審核指南,其實(shí)是iOS開(kāi)發(fā)人員的生存指南

前言

蘋(píng)果AppStore有著大量?jī)?yōu)質(zhì)的各類應(yīng)用,所有的應(yīng)用都需要通過(guò)蘋(píng)果審核團(tuán)隊(duì)的審核才能獲得發(fā)布。但是說(shuō)到審核團(tuán)隊(duì),相信很多iOS開(kāi)發(fā)者都是崩潰的,他們拒絕應(yīng)用的理由花樣百出,讓人抓狂卻又毫無(wú)辦法。他們神秘低調(diào),除了申訴渠道,不和外界做任何的溝通,即使要下架你的應(yīng)用或者終止你的開(kāi)發(fā)者賬號(hào),也是通過(guò)蘋(píng)果的技術(shù)支持來(lái)和你溝通,所以在你的申訴或者某個(gè)申請(qǐng)沒(méi)有得到回復(fù)時(shí),你會(huì)感到非常的無(wú)助。
我們無(wú)從了解審核團(tuán)隊(duì)的人,也無(wú)從了解審核團(tuán)隊(duì)的審核流程,但是充分的了解審核指南、掌握各類應(yīng)用所必須遵從的規(guī)范,對(duì)于做iOS開(kāi)發(fā)、產(chǎn)品、運(yùn)營(yíng)的小伙伴們來(lái)說(shuō)是非常有必要的。

應(yīng)用被拒分析

通過(guò)整理自己多個(gè)應(yīng)用的提交史以及其他同行的案例,對(duì)app被拒較多的違反條款做下分析

1.二進(jìn)制文件及元數(shù)據(jù)

  • app不能存在明顯錯(cuò)誤及崩潰問(wèn)題(在提交 app 之前,務(wù)必在設(shè)備上對(duì) app 的錯(cuò)誤和穩(wěn)定性進(jìn)行測(cè)試;如果你的 app 需要登錄,需要提供演示帳戶信息并保持服務(wù)器的訪問(wèn)通暢,如果審核團(tuán)隊(duì)在審核過(guò)程中發(fā)現(xiàn)了錯(cuò)誤或者崩潰問(wèn)題,將會(huì)以Guideline 2.1 - Performance - App Completeness:We discovered one or more bugs in your app when reviewed on iPhone running....拒絕應(yīng)用,此類拒絕需要修改完善后重新打包上傳)
  • app的信息及元數(shù)據(jù)完整且正確。元數(shù)據(jù)就是App信息中哪些可編輯的圖標(biāo)及文案信息(要確保 app 的描述、屏幕快照和預(yù)覽能夠準(zhǔn)確反映 app 的核心體驗(yàn),并不斷更新,以便保持與新版本相應(yīng)的最新?tīng)顟B(tài)。屏幕快照應(yīng)展示 app 的使用情況,而非僅顯示標(biāo)題封面、登錄頁(yè)面或初始屏幕。元數(shù)據(jù)應(yīng)適合所有受眾,所以要確保App 和 App 內(nèi)購(gòu)買項(xiàng)目的相關(guān)圖標(biāo)、屏幕快照和預(yù)覽保持在 4+ 年齡分級(jí);即使你的 app 分級(jí)是17+,也必須遵從。 如果元數(shù)據(jù)違反上述要求,審核團(tuán)隊(duì)將會(huì)以Guideline 2.3.x- Performance - Accurate Metadata拒絕應(yīng)用,如果是屏幕快照的問(wèn)題,審核團(tuán)隊(duì)還是還會(huì)附上圖片,此類問(wèn)題不需要重新打包,只需要編輯好元數(shù)據(jù)部分再次提交審核即可。這里有個(gè)小細(xì)節(jié)需要注意,屏幕快照一定要按照對(duì)應(yīng)尺寸的iPhone設(shè)備頭部來(lái)設(shè)計(jì),如果你用5.5’‘設(shè)備的頭部效果作為5.8及以上設(shè)備的頭部效果制作屏幕快照的話,那一定會(huì)被拒絕。)

2.App必須遵從的條款

  • App 不能包含具有攻擊性、不顧及他人感受、令人不安、惹人厭惡或低俗不堪的內(nèi)容:色情、人身或動(dòng)物傷害、宗教主義、鼓勵(lì)犯罪、誹謗歧視、虛假信息。審核團(tuán)隊(duì)對(duì)于這些內(nèi)容的判斷是主觀的,正如審核指南簡(jiǎn)介里的一條內(nèi)容所說(shuō):“as a Supreme Court Justice once said, “I’ll know it when I see it”. And we think that you will also know it when you cross it.(套用最高法院大法官的一句話:“當(dāng)我看到的時(shí)候,我就知道了”。而且,我們相信,當(dāng)您超出這個(gè)范圍時(shí),您自己也會(huì)意識(shí)到。)”。所以在涉及App所展示內(nèi)容的時(shí)候后,要做到更好的控制,無(wú)論文字還是圖片都可能被審核團(tuán)隊(duì)抓住并拒絕
  • 對(duì)于包含用戶生成內(nèi)容的 App(例如發(fā)帖,評(píng)論等),有特定的難題需要解決,比如知識(shí)產(chǎn)權(quán)侵權(quán)、匿名欺凌等。為了避免濫用,包含用戶生成內(nèi)容或社交網(wǎng)絡(luò)服務(wù)的 app 必須滿足以下條件:
    • 采用相應(yīng)的方法來(lái)過(guò)濾令人反感的內(nèi)容,以免這些內(nèi)容在 app 中發(fā)布
    • 制定一個(gè)機(jī)制,以舉報(bào)攻擊性內(nèi)容并在出現(xiàn)問(wèn)題時(shí)及時(shí)作出回應(yīng)
    • 若用戶發(fā)布攻擊性內(nèi)容,可以取消其使用服務(wù)的資格
    • 公布聯(lián)系信息,以便用戶與你聯(lián)系
  • 知識(shí)產(chǎn)權(quán),要確保 app 只包含由自己創(chuàng)建或擁有使用許可的內(nèi)容。如果您已越線并在未經(jīng)許可的情況下使用了內(nèi)容,您的 app 可能會(huì)被移除。當(dāng)然,如果他人抄襲了你的App,則他們的 app 也可能會(huì)被移除。如果你認(rèn)為自己的知識(shí)產(chǎn)權(quán)在 App Store 上受到了其他開(kāi)發(fā)者的侵犯,可以通過(guò)App Store Content Dispute來(lái)維護(hù)權(quán)利。這里有一個(gè)概念描述的比較模糊就是‘‘擁有使用許可的內(nèi)容",而這個(gè)內(nèi)容恰恰是很重要的部分,很多應(yīng)用被拒案例中都有Guideline 5.2.1 - Legal - Intellectual Property,而一但被這條準(zhǔn)則拒絕,應(yīng)用是被盯上了,除了下架這類業(yè)務(wù)和提供獲取的許可之外,沒(méi)有更好的辦法,如果你沒(méi)有足夠的條款和信息依據(jù)來(lái)說(shuō)明這是一次審核上的誤判,那盲目的嘗試去跟審核團(tuán)隊(duì)申訴往往得不償失。這類遇到的被拒案例很多,有需要提供網(wǎng)文運(yùn)營(yíng)許可、拍賣經(jīng)營(yíng)許可、金融產(chǎn)品許可、醫(yī)療機(jī)構(gòu)許可等等。
  • 隱私條款,在 Apple 生態(tài)體系中,保護(hù)用戶隱私總是第一要?jiǎng)?wù)。要在處理個(gè)人數(shù)據(jù)時(shí)小心謹(jǐn)慎,以確保遵守了隱私保護(hù)最佳做法、所銷售區(qū)域的法律。尤其是在數(shù)據(jù)收集和存儲(chǔ)、數(shù)據(jù)使用和共享、健康和健康研究、兒童的個(gè)人信息、定位服務(wù)方面更要閱讀和研究審核指南給出的協(xié)議和條款

3.設(shè)計(jì)

  • 不能抄襲現(xiàn)有AppSotre應(yīng)用。請(qǐng)拿出你自己的想法,不要簡(jiǎn)單照搬 App Store 上的熱門(mén) app,或只是細(xì)微修改其他 app 的 UI,就將其挪為己用。這么做不但有引發(fā)知識(shí)產(chǎn)權(quán)侵權(quán)索賠的風(fēng)險(xiǎn),而且如果因?yàn)檫@條審核被拒,除了大篇幅的整改,是沒(méi)有其他出路的。
  • App 應(yīng)包含功能、內(nèi)容和 UI,不要簡(jiǎn)單的做一個(gè)外殼包裝一個(gè)網(wǎng)站,這樣的應(yīng)用也會(huì)被拒絕
  • 不要試圖開(kāi)發(fā)和AppStore類似的應(yīng)用來(lái)推廣其他App,這是死路一條。

4.應(yīng)用中包含游戲、抽獎(jiǎng)?lì)惢顒?dòng)(如轉(zhuǎn)盤(pán),老虎機(jī)等)的提交審核要非要注意和謹(jǐn)慎,即使抽獎(jiǎng)的籌碼是贈(zèng)送的或是虛擬幣、積分等,必須要在正式規(guī)則中注明,并且必須明確表示 Apple 不是贊助者,也沒(méi)有以任何形式參與活動(dòng)。

5.熱更新,此處無(wú)需多言,最好不要使用。如果非要使用,需要做好混淆,而且能確保審核不被發(fā)現(xiàn)。這類的被拒條款對(duì)應(yīng)Guideline 2.5.2,遇到這種被拒的反饋,不要再去嘗試重新提交,需要?jiǎng)h除掉引入的熱更新框架,并檢查其他第三方的框架是否有使用熱更新,徹底解決之后再提交審核。

6.IPV6的問(wèn)題。審核團(tuán)隊(duì)是在 IPv6 網(wǎng)絡(luò)上進(jìn)行審核。如果你的 app 無(wú)法與 IPv6 尋址功能兼容,則可能無(wú)法通過(guò)審核。

7.內(nèi)購(gòu)問(wèn)題。這是一個(gè)令人頭疼的問(wèn)題,審核團(tuán)隊(duì)對(duì)于接入蘋(píng)果內(nèi)購(gòu)的功能和描述審核非常嚴(yán)格,非常多涉及到消費(fèi)支付、充值的的應(yīng)用因?yàn)檫@個(gè)問(wèn)題,審核被卡數(shù)周甚至數(shù)月,簡(jiǎn)直慘不忍睹。我在這里也將著重的講一下。
虛擬物品、虛擬服務(wù)、消耗型物品。按照蘋(píng)果的規(guī)定,必須使用IAP(in-App Purchase)支付、否則審核將會(huì)被拒絕。熟悉的人應(yīng)該知道,蘋(píng)果的IAP支付,操作起來(lái)支付結(jié)果回調(diào)的速度遠(yuǎn)比微信/支付寶等第三方支付慢的多,其次是虛擬物品的定價(jià)必須貼合蘋(píng)果的規(guī)定,還有就是必須支付30%的分成給蘋(píng)果,所以如果不是蘋(píng)果的審核要求,基本不會(huì)有應(yīng)用會(huì)選擇對(duì)接IAP支付。面對(duì)這么苛刻的要求,很多應(yīng)用通過(guò)跳轉(zhuǎn)到H5調(diào)起支付,或者動(dòng)態(tài)入口等方式避開(kāi)接入IAP支付,但是一旦審核出來(lái),審核會(huì)被拒,甚至收到蘋(píng)果的應(yīng)用下架通知。那么虛擬物品大致有哪些種類的呢?我們看下蘋(píng)果給出的分類:

  • 消耗型項(xiàng)目。就是隨著使用不斷的減少。例如你買了網(wǎng)易新聞的鉆石,然后將鉆石打賞給某些人群或者主播,這就是一個(gè)消耗過(guò)程,很明顯這類的項(xiàng)目就屬于消耗型項(xiàng)目
  • 非可消耗型項(xiàng)目。這個(gè)不難理解,就是通過(guò)一次購(gòu)買,便擁有了使用權(quán),可以一直使用,最常見(jiàn)的就是AppSotre購(gòu)買應(yīng)用、微信里的付費(fèi)表情包等類型消費(fèi)項(xiàng)目
  • 自動(dòng)續(xù)訂訂閱。這個(gè)和非可消耗型項(xiàng)目不同的是有失效時(shí)間。比如你在QQ音樂(lè)或者騰訊視頻購(gòu)買了一個(gè)月的會(huì)員,在這種模式下,會(huì)員用戶可以享受到非會(huì)員用戶享受不到的服務(wù),會(huì)員快過(guò)期是,會(huì)自動(dòng)續(xù)費(fèi),前提是獲取了用戶同意的。
  • 免費(fèi)訂閱。免費(fèi)訂閱是開(kāi)發(fā)人員在“報(bào)刊雜志”中推廣期內(nèi)容的絕佳方式。用戶注冊(cè)免費(fèi)訂閱后,此訂閱內(nèi)容在與該用戶AppleID相關(guān)聯(lián)的所有設(shè)備上可用。免費(fèi)訂閱不會(huì)過(guò)期,并且只能在位于“報(bào)刊雜志”類別的App中提供。
  • 非續(xù)訂訂閱。非續(xù)訂訂閱允許有時(shí)限性的營(yíng)銷服務(wù),對(duì)于App內(nèi)購(gòu)買項(xiàng)目中的限時(shí)訪問(wèn)內(nèi)容,就需使用費(fèi)續(xù)訂訂閱。例如,騰訊視頻的一月訂閱,一年訂閱等類似項(xiàng)目

大家在實(shí)際的應(yīng)用提審中可能都會(huì)碰到不是虛擬物品也被要求接入內(nèi)購(gòu),這種情況就需要跟審核團(tuán)隊(duì)去申訴,當(dāng)然申訴也是一條艱難的路,你需要準(zhǔn)備好你的支付業(yè)務(wù)完整的介紹和展示以及證明不是虛擬物品的關(guān)鍵信息。
在這個(gè)問(wèn)題上蘋(píng)果是不妥協(xié)的,所以不要抱著僥幸去用第三方的支付的方式購(gòu)買虛擬服務(wù)。即使你僥幸逃過(guò)了審核,也可能會(huì)突然收到蘋(píng)果的因?yàn)槟愕腁pp沒(méi)有接入IAP支付而給你的通知郵件,如果你不做整改,那你的下次提審一定是被拒絕的,這個(gè)是一個(gè)小伙伴真是案例。那大家熟知的社交App微信也在一直積極配合蘋(píng)果對(duì)虛擬支付的規(guī)則,并尋求解決方法。蘋(píng)果一出政策,微信就會(huì)調(diào)整。在小程序誕生之初,微信就在《微信小程序平臺(tái)運(yùn)營(yíng)規(guī)范》里明確表示:iOS系統(tǒng)下,微信小程序暫不得為虛擬物品購(gòu)買提供支付功能。去年5月,更是發(fā)布明確公告:“除小游戲類目的安卓?jī)?nèi)購(gòu)功能,小程序暫不支持虛擬支付?!?br> 諸如“騰訊視頻”這樣的官方小程序也一樣暫停了iOS端小程序的虛擬支付功能,一視同仁,沒(méi)有例外。
事實(shí)上,這次規(guī)則調(diào)整早就有所預(yù)示,去年7月下旬,微信就關(guān)閉了iOS虛擬支付的接口, 從產(chǎn)品層面截?cái)嗔颂摂M支付的路徑,充分遵守了蘋(píng)果相關(guān)規(guī)則。

8.權(quán)限的獲取。app需要使用諸如:定位、通訊錄、拍照、相冊(cè)、麥克風(fēng)等功能時(shí)要通過(guò)配置文件去設(shè)置Privacy來(lái)獲取權(quán)限,這種彈窗式的交互,能有效告知用戶獲取某種功能的權(quán)限。但是提醒的文案要寫(xiě)的足夠清晰明白,否則同樣面臨審核被拒的風(fēng)險(xiǎn)。具體的文案可以參考一些大型線上App的權(quán)限提醒描述。

9.Apple產(chǎn)品的禁忌。不要將Apple產(chǎn)品作為App中某個(gè)活動(dòng)或者競(jìng)賽的獎(jiǎng)品,否則應(yīng)用審核會(huì)被拒絕

10.引導(dǎo)下載的問(wèn)題。App中不能出現(xiàn)引導(dǎo)安裝第三方應(yīng)用的功能或者描述,例如:App在沒(méi)有安裝微信的設(shè)備上,進(jìn)行微信登錄,如果提示需要安裝微信,或者去安裝微信等描述,應(yīng)用會(huì)被拒絕。由于微信SDK有提供時(shí)候安裝微信的方法,所以現(xiàn)在通常的方式基本都是在沒(méi)安裝微信的設(shè)備上,你的App是不展示微信登錄入口的。其他的場(chǎng)景也可參考這種方式

11.iOS13之后的sign in with Apple。如果 app 專門(mén)使用第三方或社交登錄服務(wù) (如微信、QQ等) 那你的app 必須同時(shí)提供“通過(guò) Apple 登錄”作為等效選項(xiàng)。對(duì)于一般業(yè)務(wù)系統(tǒng)來(lái)說(shuō),App都是通過(guò)第三方登錄之后再通過(guò)綁定手機(jī)號(hào)來(lái)實(shí)現(xiàn)自己用戶體系的登錄。同樣要留意的是:sign in with Apple的UI設(shè)計(jì)也必須按照蘋(píng)果的設(shè)計(jì)規(guī)范

一些總結(jié)

上面列出的是我參與App應(yīng)用提交以來(lái),遇到過(guò)的審核被拒的一些案例分析,當(dāng)然通過(guò)整改App最后都通過(guò)了審核,也結(jié)合了一些業(yè)內(nèi)小伙伴應(yīng)用被拒的案例。通過(guò)分析這些案例和最后的解決方式,結(jié)合審核指南,可以得到下面一些結(jié)論:

  • 無(wú)論App開(kāi)發(fā)還是產(chǎn)品,都應(yīng)該認(rèn)真閱讀審核指南,并記住重要條款。
  • 遇到審核被拒了,一定先要明確被拒原因,確認(rèn)是違反了條款,要進(jìn)行修改,同時(shí)也排查app中是否還存在類似問(wèn)題,修改完成后,再進(jìn)行提交。
  • 應(yīng)用在集成第三方的SDK或框架時(shí),一樣要對(duì)第三方SDK中是包含違反審核條款的功能及代碼進(jìn)行排查確認(rèn)。犯錯(cuò)的可能不是你,但蘋(píng)果不會(huì)因此原諒你。
  • 審核時(shí)間長(zhǎng)短可能因 app 而異。正常提交的app,50% 的會(huì)在 24 小時(shí)內(nèi)完成審核,超過(guò) 90% 的 app 會(huì)在 48 小時(shí)內(nèi)完成審核(該數(shù)據(jù)來(lái)自蘋(píng)果官方)。多次因同一個(gè)條款被拒絕是最大的禁忌,你的App審核時(shí)間會(huì)更久,從而失去對(duì)App發(fā)布時(shí)間的控制
  • 在遇到緊急情況的時(shí)候,需要申請(qǐng)加急審核,需要注意以下問(wèn)題:如果你是為了修復(fù)嚴(yán)重錯(cuò)誤而提交了加急審核申請(qǐng),要在申請(qǐng)中注明在你當(dāng)前版本的 app 中重現(xiàn)錯(cuò)誤的步驟。對(duì)于與活動(dòng)相關(guān)的 app,建議在 App Store Connect 中規(guī)劃并安排 app 的發(fā)布。但是,如果你的 app 仍處于審核階段,而安排的活動(dòng)迫在眉睫,可以申請(qǐng)加急 app 審核。提交請(qǐng)求時(shí),請(qǐng)務(wù)必提供活動(dòng)事項(xiàng)、活動(dòng)日期以及與相應(yīng) app 之間的關(guān)聯(lián)。這一點(diǎn)非常重要。
  • 如果你認(rèn)為應(yīng)用被拒是審核團(tuán)隊(duì)對(duì) app 的某項(xiàng)功能或技術(shù)實(shí)現(xiàn)理解有誤,可以就 app 遭拒的情況向 App Review 委員會(huì)提出申訴??梢韵?App Review 委員會(huì)提交更多詳細(xì)信息,以幫助他們確定是否應(yīng)重新審核 app。

為什么寫(xiě)

首先要說(shuō)的是應(yīng)用審核被拒,是很正常的。即使你完全遵照了審核指南的條款,但是Apple持續(xù)更新審核指南以及審核時(shí)對(duì)很多內(nèi)容判斷的主觀性,都會(huì)造成應(yīng)用被拒絕。就連騰訊在成立iOS預(yù)審團(tuán)隊(duì)之前,iOS月審核通過(guò)率也只有35%。遇到被拒不可怕,只要做好完善的排查和問(wèn)題定位,做好預(yù)審,再進(jìn)行針對(duì)性的修改和申訴,相信問(wèn)題都會(huì)迎刃而解。希望這篇分享能幫助大家更快的分析定位問(wèn)題和未雨綢繆,從而更大程度的降低業(yè)務(wù)上線的風(fēng)險(xiǎn)。

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

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