商業(yè)轉(zhuǎn)載請聯(lián)系騰訊WeTest獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
最近,蘋果在官網(wǎng)給出了截至2016年6月份應(yīng)用被拒絕的十大條款(其中63%以上的應(yīng)用被拒絕都是因為這10個條款),看似簡單的條款,仍然出現(xiàn)很多提審被拒,其實,開發(fā)者對審核條款理解和把控不夠系統(tǒng),是導(dǎo)致提審被拒的主因。
那么,看似讓人眼花繚亂的審核條款,我們有沒有什么辦法準確和系統(tǒng)的去把握呢?對此,騰訊預(yù)審團隊從2014年便開始嘗試一系列的探索和積累:
分析《蘋果應(yīng)用商店審核指南》的條款,結(jié)合過往提審被拒的案例,進行系統(tǒng)的測試設(shè)計,并輸出成可落地的測試用例;
在以上步驟的基礎(chǔ)上,進行自動化分析,抽離出可自動化的模塊(開發(fā)對應(yīng)的自動掃描工具);
將剩余的部分用例,組建專項的測試人員來進行驗收;
App每次版本提審,通過以上測試驗收后,才會正式提交給蘋果審核;
根據(jù)以上工作思路,騰訊預(yù)審團隊對審核對象進行模塊的劃分,主要包含ipa包、提審資源以及應(yīng)用內(nèi)容和功能3大模塊(一共整合了150+個測試點及測試用例,其中自動化掃描項70+個):
ipa包的檢查
主要是確保ipa中info.plist、包/文件大小、icon規(guī)格、私有API、第三方SDK、64位等內(nèi)容符合蘋果要求,此部分的驗收,騰訊預(yù)審團隊已開發(fā)出自動化工具,通過自動掃描來完成;
主要是確保提交的應(yīng)用截圖、視頻、AppIcon、應(yīng)用描述等資源是符合蘋果要求的,其中資源規(guī)格屬性的驗收,預(yù)審團隊已開發(fā)出自動化工具,通過自動掃描來完成;但資源的內(nèi)容、文案等部分內(nèi)容的驗收,還需要人工來審查;
除此之外,預(yù)審團隊通過實時跟進蘋果審核動態(tài),依此來不斷的更新和完善驗收方案,持續(xù)保障產(chǎn)品的提審?fù)ㄟ^率,得到越來越多產(chǎn)品的認可,截止到今年7月,服務(wù)App產(chǎn)品已累計100+個,每月完成的轉(zhuǎn)測次數(shù)120+次。在2016上半年的提審數(shù)據(jù)統(tǒng)計可見,盡管有IPv6、提審圖片/視頻等政策變更的沖擊,提審?fù)ㄟ^率仍舊保持在85%以上,體現(xiàn)了預(yù)審方案的工作成效:
各模塊被拒的占比,詳情如下圖:
在以上被拒的數(shù)據(jù)統(tǒng)計中,可以發(fā)現(xiàn),更多的是在游戲功能、內(nèi)容和提審材料的內(nèi)容,而ipa包和提審資源規(guī)格部分被拒的次數(shù)占比很少,自動化工具帶來的質(zhì)量和保障也得以體現(xiàn)。
Ipa包檢查項主要包含以下幾方面,如info.plist、私有API、第三方SDK、64位、icon文件等等,其中幾個重要掃描規(guī)則我們將逐一進行介紹:
Info.plist是一種結(jié)構(gòu)化的文本文件,通常所說的 “屬性列表”,iOS的app都使用Info.plist文件來存儲元信息,用來實現(xiàn)決定bundle所顯示的icon,當(dāng)前app支持打開的文檔類型,服務(wù)聲明等等。關(guān)于此部分掃描規(guī)則,來源于《Information Property List Key Reference》,包含如下方面的內(nèi)容:
蘋果官方對iPhone、iPad、iPod等應(yīng)用程序的icon有明確的要求:要求ipa包中必須包含180x180,120x120,76x76,152x152,167x167尺寸的PNG格式的icon(詳見下表),并且不同尺寸的icon內(nèi)容要一致,關(guān)于此部分的掃描規(guī)則,來源于《iOS Human Interface Guidelines》:
關(guān)于App icon的檢查,采用自動化方法實現(xiàn)自動解壓ipa包,并逐一核實icon圖標(biāo)是否存在并滿足要求,對于不滿足要求的ipa包,給出告警提示:
私有API和non-public API,是蘋果明令禁止的條款,每次預(yù)審都會重點跟進這部分的掃描結(jié)果。關(guān)于這塊自動化的思路,在之前分享的一些文章中也曾提過了,主要是采用一些反編譯工具,對ipa的可執(zhí)行文件進行反編譯解析,獲取頭文件中庫、方法和類的集合,再去逐一比對私有庫和non-public庫,如有命中則給出告警提示:
1.4 文件大小檢查
掃描如有不滿足項,則給出告警提示:
提審資源包含提審圖片、提審視頻和應(yīng)用介紹三部分,蘋果對提審資源要求,主要是兩方面:規(guī)格屬性和內(nèi)容,對于前者,預(yù)審是通過自動化來驗收,而后者則是通過人工來審查的。
提審資源規(guī)格屬性的掃描規(guī)則,來源于《iTunes Connect Developer Guide》,預(yù)審當(dāng)前主要覆蓋以下幾方面的內(nèi)容:
對于不滿足要求的資源,則給出告警提示:
提審資源的驗收規(guī)則,來源于《iTunes Connect Developer Guide》和《App Store Review Guidelines》,預(yù)審主要覆蓋以下幾個方面內(nèi)容:
【案例1】
《項目A》x.17.5版本,提審圖片不能真實反應(yīng)App的內(nèi)容,導(dǎo)致被拒。
【應(yīng)對措施】
圖片中盡量避免提供與應(yīng)用無關(guān)的內(nèi)容,要表現(xiàn)出應(yīng)用的真實內(nèi)容,尤其是游戲類應(yīng)用的截圖,需體現(xiàn)游戲場景、畫風(fēng)、特色玩法等。針對此問題,產(chǎn)品修改并通過蘋果審核的圖片如下:
【案例2】
《項目B》x.1.10版本,視頻中出現(xiàn)手機設(shè)備、并且存在游戲中沒有的內(nèi)容,宣傳成分太多,因此被拒。
【應(yīng)對措施】
在蘋果真機設(shè)備上錄制應(yīng)用的真實內(nèi)容,盡量避免加入廣告、特效等宣傳成分的內(nèi)容。
蘋果針對應(yīng)用內(nèi)容和功能的審核,往往會比較嚴格,如果其中一點不滿足條款便會拒絕版本,因此,大家需要熟記每個審核要點,同時也盡量要遍歷應(yīng)用功能。在遍歷功能時要注意重要機型和固件的適配,盡量在最新的iPhone和Pad(如應(yīng)用不支持Pad,可以忽略),固件也盡量是最新的版本。對于特殊時間段,比如在秋季新系統(tǒng)發(fā)布前,要提前摸底beta版本兼容性,避免新系統(tǒng)發(fā)布時出現(xiàn)不可預(yù)知的兼容性問題,阻塞版本的提審節(jié)奏。
近期蘋果要求App兼容IPv6網(wǎng)絡(luò)(6月1號以后上架/更新的App,必須兼容IPv6),因此,提審前需確保應(yīng)用在IPv6網(wǎng)絡(luò)下可正常登錄(IPv6網(wǎng)絡(luò)可按照蘋果官網(wǎng)提供指導(dǎo)進行部署)。除此之外,美國VPN網(wǎng)絡(luò)也不能忽視。因為蘋果的審核團隊在美國,他們進行審核時,使用的是美國網(wǎng)絡(luò),跨洲際的網(wǎng)絡(luò)連接,難免會出現(xiàn)時延大、抖動、丟包等網(wǎng)絡(luò)問題,為了提前驗證App后臺服務(wù)器基于此場景下的反應(yīng),美國VPN來模擬蘋果審核團隊的訪問App,可以提前爆露一些問題。
預(yù)審對這部分的驗收,主要是包含以下兩個模塊:
文字內(nèi)容的檢查
應(yīng)用內(nèi)容的檢查
主要覆蓋應(yīng)用中的圖片、動畫、視頻、游戲的角色造型/PVE/PVP等場景界面,確保以上內(nèi)容滿足蘋果審核的相關(guān)條款;
以上便是iOS預(yù)審主要的工作思路,核心思想是圍繞《蘋果應(yīng)用商店審核指南》來開展驗收工作,同時也在實時跟進蘋果審核政策的動態(tài),來確保預(yù)審的方向和質(zhì)量。
為了提高IEG蘋果審核通過率,騰訊專門成立了蘋果審核測試團隊,打造出iOS預(yù)審工具這款產(chǎn)品。經(jīng)過1年半的內(nèi)部運營,騰訊內(nèi)部應(yīng)用的iOS審核通過率從平均35%提升到90%+。
現(xiàn)將騰訊內(nèi)部產(chǎn)品的過審經(jīng)驗,以線上工具的形式共享給各位。在WeTest騰訊質(zhì)量開放平臺上可以在線使用。點擊鏈接:http://wetest.qq.com/ios/即可立即體驗!
希望App/手游在預(yù)審驗收保證下,都可以快快樂樂過審,開開心心賺錢。