當(dāng)前位置:首頁 >  站長 >  建站經(jīng)驗 >  正文

問答思考:如何設(shè)計APP清理緩存功能?

 2017-06-05 10:55  來源:   我來投稿 撤稿糾錯

  域名預(yù)訂/競價,好“米”不錯過

前些天,在天天問里面看到有個關(guān)于如何設(shè)計“清理緩存”的功能,然后思考了一下的確很多APP上都有清理緩存的功能,但是也有少部分APP上沒有清理緩存的功能,那么問題來了,緩存是什么?有什么價值?又要如何設(shè)計清理緩存功能呢?于是乎,就有了今天的這篇文章。

一、什么是緩存?

緩存就是數(shù)據(jù)交換的緩沖區(qū),當(dāng)某一硬件要讀取數(shù)據(jù)時,會首先從緩存中查找需要的數(shù)據(jù),如果找到了則直接執(zhí)行,找不到的話則從內(nèi)存中找。由于緩存的運行速度比內(nèi)存快得多,故緩存的作用就是幫助硬件更快地運行。簡單的理解就是把用戶訪問的數(shù)據(jù)存在本地,當(dāng)用戶在某些情況下需要使用時,直接在本地調(diào)取緩存的數(shù)據(jù),這樣效率較高。

二、有哪些APP緩存方式?按需緩存,是把從服務(wù)器獲取的內(nèi)容以某種格式存放在本地文件系統(tǒng),之后對于每次請求,檢查緩存中是否存在這塊數(shù)據(jù),只有當(dāng)數(shù)據(jù)不存在(或者過期)的情況下才從服務(wù)器獲取。這樣的話,獲取數(shù)據(jù)的效率就明顯提高了。預(yù)緩存,是把內(nèi)容放在本地以備將來訪問,另外就是在本地緩存無需重新連接服務(wù)器時可被編輯。編輯可能是用戶進(jìn)行“標(biāo)記記錄為已讀”或“加入收藏”,或其他類似的操作。三、為什么要有緩存?

緩存的目的主要是提高APP的性能和離線訪問數(shù)據(jù),那么對于用戶來說有哪些價值?

A場景

用戶首次打開資訊類APP首頁,loading了5秒鐘首頁資訊信息才全部展現(xiàn)出來,然后點擊某一條資訊,瀏覽該咨詢的詳細(xì)信息,瀏覽完再返還到首頁瀏覽其他資訊,這時候首頁加載多久才能顯示出所有資訊信息?如果還是要loading5秒鐘的話,那么用戶反復(fù)的進(jìn)入下一頁和返還首頁的過程中,會明顯感覺到首頁總是在loading,從而消耗了用戶時間,也降低了用戶體驗。

緩存價值:提高APP性能和頁面加載效率,第一次將頁面資訊信息進(jìn)行緩存到本地,后續(xù)在未刷新情況下直接調(diào)用本地數(shù)據(jù)而不是訪問服務(wù)器數(shù)據(jù),來提高數(shù)據(jù)獲取的效率。

B場景

用戶在有網(wǎng)絡(luò)的情況下,使用閱讀類APP點擊查看了一本小說,而后出門在地鐵上無聊想看這本小說,但這時候地鐵內(nèi)無信號,如果僅僅因為沒有信號的原因,用戶打開APP映入眼簾的就是帶有網(wǎng)絡(luò)異常的警示頁和他無法閱讀之前中意的小說的結(jié)局嗎?

緩存價值:支持離線訪問,用戶在APP離線無網(wǎng)絡(luò)的情況下,仍可以閱讀之前緩存到本地的小說內(nèi)容,即解決用戶離線訪問的需求,又提高了離線情況下APP的視覺友好度。

C場景

用戶在使用社交APP時,因為外界因素導(dǎo)致長時間處于無網(wǎng)絡(luò)的情況下,這時候他想刪除某一條聊天記錄,或者是收藏一篇美文,亦或者是給好友的動態(tài)進(jìn)行點贊。那結(jié)果會是因為APP離線的情況下,用戶無法進(jìn)行以上的操作嘛?

緩存價值:支持用戶離線操作,對于將之前用戶瀏覽的信息緩存到本地后,用戶仍可在離線狀態(tài)下,對信息進(jìn)行輔助性操作,比如點贊、收藏、標(biāo)記等。這樣能提高用戶的滿意度。

D場景

用戶使用短視頻APP查看了一部20M的短視頻,花費了20M流量。當(dāng)用戶觀看完就關(guān)閉APP了。那么當(dāng)用戶覺得之前觀看的短視頻很精彩,想再次觀看這部短視頻的時候,還需要花費20M流量嗎?

緩存價值:減少用戶流量損耗,當(dāng)用戶第一次觀看短視頻時,已經(jīng)花費一定的流量將其緩存到本地,后續(xù)還需要觀看此短視頻,則無需花費流量來從服務(wù)器端獲取此短視頻,可直接在0流量情況(等同于離線)下直接觀看此短視頻。

四、如何設(shè)計清理緩存功能?

上述主要介紹假設(shè)的四種用戶場景及對應(yīng)體現(xiàn)出的緩存價值,可以肯定的是APP的緩存功能是有一定的必要性。那么手機(jī)緩存只有優(yōu)點沒有缺點嘛?答案顯而易見是NO。毋容置疑的是APP的緩存會一定程度上影響到用戶手機(jī)的儲存空間,所以需要設(shè)計一個清理緩存的功能,以便于用戶有效的使用被釋放的存儲空間。那么接下來談?wù)撊绾蝸碓O(shè)計清理緩存功能呢?

是否需要用戶清理緩存

1、不需要

不需要用戶清理理APP緩存的前提是,此APP不會占用用戶手機(jī)過多的存儲空間,這時候就不需要用戶自己來清理緩存了,可以通過系統(tǒng)自動來清理APP緩存。自動清理緩存的兩個要素:設(shè)置緩存的上限、設(shè)置清理緩存的頻率。

2、需要

多數(shù)常見于IM類、電商類、資訊類、閱讀類、視頻類等APP需要單獨設(shè)置清理緩存的功能,因為這類APP會因為用戶頻繁的使用緩存較多的數(shù)據(jù)在本地,可能會占用手機(jī)較多的儲存空間,這類APP會把是否清理緩存的權(quán)限交由用戶自己決定。(另外還有少部分APP,用戶可自定義設(shè)置緩存的上限,這樣用戶不僅有清理緩存的權(quán)限,還有設(shè)置緩存上限的權(quán)限。比如網(wǎng)易云音樂,用戶可勾選緩存的上限值是多少,按理超過的上限的緩存是不被存放到本地來占用手機(jī)儲存空間的,一旦達(dá)到緩存上限時,APP是不會進(jìn)行超過緩存上限的提醒,主要是為了不干擾用戶正常操作。)

用戶清除緩存的細(xì)節(jié)

1、顯示緩存大小

這是最基本、也是不能忽略的一點就是顯示緩存的大小,以便于用戶根據(jù)緩存大小來判斷是否要清理這些緩存。

2、顯示當(dāng)前APP緩存占用手機(jī)儲存空間的比例

顯示當(dāng)前緩存占用手機(jī)存儲空間的比例,以及可用的手機(jī)儲存空間有多大,為用戶選擇是否清理緩存提供了兩種方式的比較,提高用戶清理緩存的參考度。

3、顯示緩存分類

將APP緩存進(jìn)行分類,一般分類有兩種維度,一種是時間維度,另外一種是內(nèi)容維度。

(1)時間維度

主要是可清理某一時間段的手機(jī)緩存。比如飛豬顯示3天之內(nèi)、3~7天、7天之外各階段緩存大小,用戶可自由選擇清理哪一時間段或多個時間段的緩存。這樣在用戶手機(jī)儲存空間不足,但又不想清理最近使用APP留下的緩存情況下,給用戶提供了一個不錯的選擇。

(2)內(nèi)容維度

按照緩存內(nèi)容進(jìn)行分類顯示緩存大小并支持單獨清理某一類緩存。比如same緩存分為清除圖片緩存、清除語音緩存、清除數(shù)據(jù)緩存、草稿文件緩存、貼紙圖片緩存及各自緩存大小,這樣當(dāng)用戶需要在APP緩存和手機(jī)儲存空間之間進(jìn)行權(quán)衡時,可選擇對用戶損害最小的一類緩存進(jìn)行清除。這不僅能滿足用戶釋放手機(jī)儲存空間的需求,又提高了用戶體驗。

4、清理緩存的交互顯示

(1)是否需要清理緩存

當(dāng)用戶點擊進(jìn)行緩存清理時,彈出彈框提示用戶是否需要清理,一方面告知用戶清理緩存需要一定的時間,減少等到緩存被清理過程中的焦慮感;另外一方面,避免用戶手誤錯點到清理緩存,使得用戶能慎重決定。

(2)緩存是否成功清理

當(dāng)系統(tǒng)清理完緩存時,希望用戶能得到緩存是否清理成功的反饋,可以是緩存大小變?yōu)?,也可以是一句“緩存清理成功”。

五、總結(jié)

最后,至于大家如何設(shè)計各自APP清理緩存的功能,那就需要大家考慮各自APP所屬類型,不同類型的APP清理緩存的側(cè)重點和復(fù)雜度也不同,若是低頻率且緩存較小的APP可考慮系統(tǒng)自動清理緩存,而不用花費精力設(shè)計獨立清理緩存的功能供用戶操作;另外就是考慮目前產(chǎn)品所屬階段,如果是產(chǎn)品上線初期,應(yīng)該把精力花在強(qiáng)需求、高頻次的功能上,而不是低頻率的清理緩存上。

以上種種只是我的個人想法,大家有沒有什么更好的想法呢?歡迎來一起思考討論。

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
app設(shè)計

相關(guān)文章

  • APP設(shè)計:游戲APP的運營淺析

    iOS成為大家爭先恐后爭奪的一塊大蛋糕。比如刷榜,沖榜,ASO,熱搜等等。蘋果對待所有設(shè)計者一視同仁,Appstore把棋牌手游定位在casino,默認(rèn)守則就是不推廣棋牌手游。對于系統(tǒng)榜單排行不做干預(yù),(國內(nèi)國外都存在刷榜行為),對于侵權(quán)和違規(guī)手游有下架處理。

  • app設(shè)計之教育類app該如何推廣?

    將APP市場推廣渠道分為付費渠道,贊助渠道,自媒體渠道,口碑渠道,贊助渠道。針對教育類APP運營推廣,選擇適當(dāng)?shù)腁PP推廣渠道,這個時候就需要APP運營人員對于APP如何推廣有深入的了解,真正做到隨手拿來就可以做推廣,所以教育類APP的推廣,需要踏實,還要善于發(fā)現(xiàn),在很多時候認(rèn)識一個APP產(chǎn)品,比做

    標(biāo)簽:
    app推廣
    app設(shè)計
  • 如果你不喜歡折疊手機(jī)菜單,我們幫您找了5種其它解決方案

    網(wǎng)站上的空間十分寶貴,特別是對移動端設(shè)備而言。如何充分利用網(wǎng)站上的空間,提高網(wǎng)站內(nèi)容的可讀性,正確引導(dǎo)用戶進(jìn)行瀏覽,是站長們面對的共同難題。一些設(shè)計師認(rèn)為通過使用隱藏式菜單(最典型的要數(shù)漢堡圖標(biāo))可以有效解決這個問題。不過,研究表明漢堡圖標(biāo)這樣的隱藏式導(dǎo)航菜單雖然在節(jié)省網(wǎng)站空間上是一把好手,但在某種

  • 如何給App設(shè)計出不惡心用戶的付費點?

    本文就著重講如何設(shè)計出不惡心用戶的付費點。

    標(biāo)簽:
    app設(shè)計
  • 騰訊攜手公益組織,2天養(yǎng)成APP設(shè)計高手!??!

    騰訊云獨家贊助的“云+公益”APP原型設(shè)計Hackathon,于11月14日至15日在深圳騰訊大廈開展,這是騰訊志愿者協(xié)會聯(lián)合NGO2.0(深圳市圖鷗公益事業(yè)發(fā)展中心)發(fā)起的一項公益活動,在短短兩天時間內(nèi),不懂計算機(jī)編程和平面設(shè)計的公益組織代表從“菜鳥”華麗轉(zhuǎn)變到高手,完成多個公益APP原型設(shè)計。他

    標(biāo)簽:
    app設(shè)計

熱門排行

信息推薦