作者:@云峰小羅,公眾號:云峰霧閣 (ID:yunfengwuge)
做iOS開發(fā)近 5 年了,每次提交版本時(shí)不可謂不警惕翼翼,如履薄冰,但是照舊難免踩到了一些坑。蘋果的官方文檔(AppStore審核條目)這里就不羅列了,太冗長繁瑣了,而且大部分是一樣平常app都不會觸碰的到的,今天我重要想以本身的親身經(jīng)歷,跟大家回顧一下這些年我提交AppStore審核時(shí)踩過的坑,并且針對如何避免給出一些tips供大家參考。大神請忽略,專家請輕拍。
1、未遵守蘋果iOS APP數(shù)據(jù)儲存引導(dǎo)方針。
假如你的App有離線數(shù)據(jù)下載功能,尤其必要關(guān)注這一點(diǎn)。由于離線數(shù)據(jù)一樣平常占用存儲空間比較大,可以被重新下載和重修,但是用戶每每盼望體系存儲空間緊時(shí)也依然能夠妥妥的存在著,不會被IOS體系主動(dòng)清理掉。所以不能放在/Library/Caches 目錄下(該目錄在體系空間嚴(yán)重時(shí)可能會被iOS體系消滅)。 那就只能放在主目錄/Documents 或 主目錄/Library/自定義文件夾下,如許才不會被iOS體系主動(dòng)清理掉。但是這些數(shù)據(jù)可能會很大,假如放在 主目錄/Documents 或 主目錄/Library/自定義的文件夾下,會被iCoud主動(dòng)同步,那么用戶必要為了同步消費(fèi)不少流量,蘋果可能會因此拒絕你的應(yīng)用上架。所以必要在程序中給自定義的目錄設(shè)置“do not backup”屬性。
關(guān)于數(shù)據(jù)存儲必要細(xì)致的點(diǎn),總結(jié)在下面:
關(guān)鍵數(shù)據(jù)
內(nèi)容:用戶創(chuàng)建的數(shù)據(jù)文件,無法在刪除后主動(dòng)重新創(chuàng)建
路徑:主目錄/Documents
管理:iOS體系即時(shí)碰到存儲空間不足的情況下,也不會消滅,同時(shí)會備份到iTunes或iCloud中
緩存數(shù)據(jù)
內(nèi)容:可用于離線環(huán)境,可被重復(fù)下載重復(fù)生成,即使在離線時(shí)缺失,應(yīng)用自己也可以正常運(yùn)行
路徑:主目錄/Library/Caches
管理:在存儲空間不足的情況下,會清空, 并且不會被主動(dòng)備份到iTunes和iCloud中
一時(shí)數(shù)據(jù)
內(nèi)容:應(yīng)用運(yùn)行時(shí),為完成某個(gè)內(nèi)部操作一時(shí)生成的文件
路徑:主目錄/tmp
管理:隨時(shí)可能被iOS體系消滅,且不會主動(dòng)備份到iTunes和iCloud,盡量在文件不再使用時(shí),應(yīng)用本身清空,避免對用戶設(shè)備空間的虛耗
離線數(shù)據(jù)
內(nèi)容:與緩存數(shù)據(jù)類似,可以被重新下載和重修,但是用戶每每盼望這些數(shù)據(jù)即使在存儲嚴(yán)重時(shí)也不會被體系主動(dòng)刪除
目錄:主目錄/Documents 或 主目錄/Library/自定義的文件夾
管理:與關(guān)鍵數(shù)據(jù)類似,即使在存儲空間不足的情況下也不會被消滅,應(yīng)用本身應(yīng)該消滅已經(jīng)不再使用的文件,以免虛耗用戶設(shè)備空間 。必要設(shè)置”不備份到iCoud" ,否則會審核不過。
2、未提供測試賬號假如你的App有部分功能必要登錄才能使用,那么你必要再提交審核時(shí),勾選演示賬戶,并提供對應(yīng)信息,如下圖:
測試賬號填寫
如今許多app為了更方便快捷,防止用戶忘掉密碼,都采用手機(jī)號+驗(yàn)證碼的體例,如許的話就沒有辦法給蘋果提供演示賬戶了,除非賬戶體系后臺做修改提供支撐。這種情況,就不必要勾選演示賬戶了,但是要在備注信息里跟蘋果好好詮釋一下,說我們也是為了提拔用戶體驗(yàn)的,所以對賬戶體系做了改動(dòng),用戶有手機(jī)就能登錄,不必要注冊啥的,如下圖。假如你啥也不說的話,那就乖乖等著被拒吧。
測試賬號說明
3、跟相干硬件配合使用的app,未提供演示視頻這里指的硬件是不必要MFi認(rèn)證的,通過BLE(低功耗藍(lán)牙)或者WiFi連接的硬件。直接在備注里提供相干功能的演示視頻即可,如下圖。
硬件連接演示視頻
演示視頻必要把完備的連接過程操作以及連接硬件之后跟硬件相干的功能演示都包含在內(nèi)。從截圖可以看到我的“褲寶”演示視頻我是直接放在優(yōu)酷上了。所以并不像傳聞中那樣,必要翻墻放到Y(jié)ouTube上,直接放優(yōu)酷土豆或者百度網(wǎng)盤都行。也不必要用英文,用中文即可。
4、跟相干硬件配合使用的app,未提供PPID.(Product Plan ID )假如你的App是必要跟通過MFi認(rèn)證的硬件進(jìn)行交互,即使用了EA框架(ExternalAccessory.framework),配置了協(xié)議字符串(Supported external accessory protocols),那么你必要在備注信息里提供PPID。
ppid說明
許多時(shí)候,我們的App可以同時(shí)適配許多型號的硬件,每個(gè)型號的硬件對應(yīng)的PPID不一樣。假如AppStore提交審核通過之后,又新增了一款型號硬件支撐怎么辦呢?是否必要單獨(dú)發(fā)一個(gè)版本,把對應(yīng)的PPID增長上去了? 答案是不必要,由于App支撐的PPID列表信息是放在備注信息里面的,往列表中新增PPID并不必要修改到二進(jìn)制文件信息,蘋果在這里也比較人性化,可以在不提交新版本的情況下增長PPID信息。
下一篇::影響網(wǎng)頁內(nèi)容的七種設(shè)計(jì)誤區(qū)
最新文章
- 1火兔助手

火兔助手......
- 2Access數(shù)據(jù)庫超過2G解決方案

Access數(shù)據(jù)庫操作、管理起來很方便,工作多年......
- 3火兔助手|快手點(diǎn)贊|快手評論

......
- 4微型B2C站點(diǎn)的建立

《微型B2C站點(diǎn)的建立》對于大多數(shù)企業(yè)來說,......
- 5百度優(yōu)化之判斷關(guān)鍵詞是否犯

??關(guān)鍵詞堆砌(keywordstuffing)在網(wǎng)頁中大......


