本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種文件存儲方法、裝置及終端。
背景技術(shù):
隨著通信技術(shù)的快速發(fā)展,人們開始越來越多地使用即時通訊軟件進行日常的工作、生活交流。
在即時通訊軟件的使用過程中,會在終端中生成大量的緩存文件。例如,即時通訊軟件接收到的圖片、音頻、視頻等文件都會存儲在終端中。由此導(dǎo)致終端的可用存儲空間逐漸減小。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種文件存儲方法、裝置及終端,可以節(jié)省終端上的存儲空間。
本發(fā)明實施例提供一種文件存儲方法,包括:
判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);
若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;
若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;
將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
相應(yīng)的,本發(fā)明實施例還提供一種文件存儲裝置,包括:
第一判斷模塊,用于判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);
第二判斷模塊,用于在該運行次數(shù)小于預(yù)設(shè)次數(shù)時,進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;
發(fā)送模塊,用于在該時間間隔大于第一預(yù)設(shè)時間間隔時,將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;
修改模塊,用于將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
相應(yīng)的,本發(fā)明實施例還提供一種終端,包括:
存儲有可執(zhí)行程序代碼的存儲器;
與該存儲器耦合的處理器;
該處理器調(diào)用該存儲器中存儲的該可執(zhí)行程序代碼,執(zhí)行上述文件存儲方法。
本發(fā)明實施例提供的文件存儲方法,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。該方案在緩存文件的運行頻率低并且最后一次運行的時間距離當(dāng)前時間長時,將緩存文件上傳到服務(wù)器,能夠節(jié)省終端上的存儲空間。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹。顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實施例提供的文件存儲方法的流程示意圖。
圖2是本發(fā)明實施例提供的文件存儲方法的另一流程示意圖。
圖3是本發(fā)明實施例提供的文件存儲方法的應(yīng)用場景示意圖。
圖4是本發(fā)明實施例提供的文件存儲方法的另一應(yīng)用場景示意圖。
圖5是本發(fā)明實施例提供的文件存儲裝置的結(jié)構(gòu)示意圖。
圖6是本發(fā)明實施例提供的文件存儲裝置的另一結(jié)構(gòu)示意圖。
圖7是本發(fā)明實施例提供的文件存儲裝置的又一結(jié)構(gòu)示意圖。
圖8是本發(fā)明實施例提供的文件存儲裝置的再一結(jié)構(gòu)示意圖。
圖9是本發(fā)明實施例提供的終端的結(jié)構(gòu)示意圖。
圖10是本發(fā)明實施例提供的終端的另一結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述。顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明的說明書和權(quán)利要求書以及上述附圖中的術(shù)語“第一”、“第二”、“第三”等(如果存在)是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應(yīng)當(dāng)理解,這樣描述的對象在適當(dāng)情況下可以互換。此外,術(shù)語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含。例如,包含了一系列步驟的過程、方法或包含了一系列模塊或單元的裝置、終端、系統(tǒng)不必限于清楚地列出的那些步驟或模塊或單元,還可以包括沒有清楚地列出的步驟或模塊或單元,也可以包括對于這些過程、方法、裝置、終端或系統(tǒng)固有的其它步驟或模塊或單元。
本發(fā)明實施例提供一種文件存儲方法、裝置及終端,以下將分別進行詳細說明。
該文件存儲方法可以應(yīng)用于終端中。該終端可以為智能手機、平板電腦、個人計算機等設(shè)備。
如圖1所示,文件存儲方法,可以包括以下步驟:
s110,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,該應(yīng)用程序包括但不限于即時通訊軟件,例如微信、騰訊qq等。該應(yīng)用程序在終端中存儲有大量的緩存文件。緩存文件包括但不限于文本、圖片、音頻、視頻等文件。
終端可以依次判斷每一緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。若該運行次數(shù)小于預(yù)設(shè)次數(shù),則執(zhí)行步驟s120;若該運行次數(shù)大于或等于預(yù)設(shè)次數(shù),則可以終止流程。其中,預(yù)設(shè)次數(shù)可以是預(yù)先設(shè)置并存儲在終端中的一個數(shù)值。例如,預(yù)設(shè)次數(shù)可以為5。用戶每查看一次該緩存文件,即可認為終端通過該應(yīng)用程序?qū)υ摼彺嫖募\行了一次。
在一些實施例中,如圖2所示,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)前,該文件存儲方法還可以包括以下步驟:
s150,對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控;
當(dāng)所有緩存文件的數(shù)據(jù)量大小之和大于預(yù)設(shè)值時,則依次判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,終端可以對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控,以確定該應(yīng)用程序中的所有緩存文件在終端上占用多大的存儲空間。預(yù)設(shè)值可以是預(yù)先設(shè)置并存儲在終端中的一個數(shù)據(jù)量大小。例如,預(yù)設(shè)值可以為200m(兆字節(jié))。
當(dāng)終端監(jiān)控到該應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和大于該預(yù)設(shè)值時,例如,該應(yīng)用程序中的圖片、音頻、視頻等緩存文件的數(shù)據(jù)量大小之和超過200m,則開始執(zhí)行步驟s110,依次對每一緩存文件的運行次數(shù)進行判斷,判斷該緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
需要說明的是,終端對應(yīng)用程序中緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控時,是對應(yīng)用程序中所有的緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控,也即監(jiān)控應(yīng)用程序中的所有緩存文件所占用的存儲空間大小。
而終端判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)時,是針對單個緩存文件進行判斷。終端在執(zhí)行本發(fā)明實施例中的文件存儲方法時,是針對每個緩存文件逐個進行判斷和處理。
在一些實施例中,如圖2所示,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)包括以下步驟:
s111,依次獲取應(yīng)用程序中每一緩存文件的運行記錄;
s112,根據(jù)該運行記錄統(tǒng)計該緩存文件的運行次數(shù);
s113,判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,應(yīng)用程序中可以設(shè)置日志文件。該日志文件用于對緩存文件的運行情況進行記錄。終端可以獲取每一緩存文件的運行記錄,然后根據(jù)運行記錄統(tǒng)計緩存文件的運行次數(shù)。隨后,將該緩存文件的運行次數(shù)與該預(yù)設(shè)次數(shù)進行比較,以判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。若該運行次數(shù)小于預(yù)設(shè)次數(shù),則執(zhí)行步驟s120;若該運行次數(shù)大于或等于預(yù)設(shè)次數(shù),則可以終止流程。
s120,若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔。
其中,第一預(yù)設(shè)時間間隔可以是預(yù)先設(shè)置并存儲在終端中的一個時間段。例如,第一預(yù)設(shè)時間間隔可以為3天。當(dāng)終端判斷出緩存文件的運行次數(shù)小于預(yù)設(shè)次數(shù)時,進一步確定該緩存文件最后一次運行的時間。判斷該最后依次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔。若該時間間隔大于第一預(yù)設(shè)時間間隔,則執(zhí)行步驟s130;若該時間間隔小于或等于第一預(yù)設(shè)時間間隔,則可以終止流程。
例如,該緩存文件最后一次運行是在5天前。則該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔為5天,大于第一預(yù)設(shè)時間間隔3天。隨后,終端執(zhí)行步驟s130。
其中,運行可以包括查看、修改等針對該緩存文件的操作。
在一些實施例中,終端可以通過該緩存文件的運行記錄來確定該緩存文件最后一次運行的時間。
s130,若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址。
其中,參考圖3,終端可以通過因特網(wǎng)與服務(wù)器進行通信。終端和服務(wù)器組成一個通信系統(tǒng)。該服務(wù)器可以為上述應(yīng)用程序的網(wǎng)絡(luò)服務(wù)器。例如,該應(yīng)用程序為微信時,該服務(wù)器可以是提供微信應(yīng)用程序的廠商所提供的服務(wù)器。
當(dāng)終端判斷出該緩存文件的運行次數(shù)小于預(yù)設(shè)次數(shù),并且該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔大于第一預(yù)設(shè)時間間隔時,說明該緩存文件的運行頻率低,并且該緩存文件長期未運行。此時,終端可以將該緩存文件上傳到服務(wù)器。服務(wù)器接收到終端上傳的緩存文件后,將該緩存文件進行存儲,并向終端返回該緩存文件的云存儲地址。
在一些實施例中,參考圖2,將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址包括以下步驟:
s131,若該時間間隔大于第一預(yù)設(shè)時間間隔,則獲取當(dāng)前用戶的賬戶信息;
s132,將該緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄,并接收該服務(wù)器返回的云存儲地址。
其中,當(dāng)終端判斷出該時間間隔大于第一預(yù)設(shè)時間間隔時,獲取上述應(yīng)用程序中當(dāng)前的用戶賬戶信息,并使用該賬戶信息訪問服務(wù)器。其中,該賬戶信息可以包括賬戶名和密碼。終端通過獲取到的賬戶名和密碼登錄服務(wù)器。
由于存在大量的用戶在服務(wù)器上進行注冊,因此服務(wù)器對于每一個賬戶均設(shè)置有對應(yīng)的賬戶目錄。該賬戶目錄用于存儲該賬戶對應(yīng)的用戶所上傳的緩存文件。
終端獲取到當(dāng)前用戶的賬戶信息后,使用該賬戶信息訪問服務(wù)器,并將上述緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄。服務(wù)器將該緩存文件存儲到與該賬戶信息對應(yīng)的賬戶目錄后,向當(dāng)前用戶返回該緩存文件的云存儲地址。
s140,將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
其中,在緩存文件上傳到服務(wù)器之前,該緩存文件存儲在終端的存儲器中。該緩存文件在終端存儲器中具有一個存儲地址(即存儲路徑)。應(yīng)用程序中該緩存文件所在的緩存位置存儲有該存儲地址。也即,應(yīng)用程序中該緩存文件的緩存位置指向該緩存文件的實際存儲地址。例如,即時通訊軟件的通訊記錄中存儲有該存儲地址。當(dāng)終端運行該緩存文件時,該應(yīng)用程序根據(jù)該存儲地址調(diào)用該緩存文件。
終端將緩存文件上傳到服務(wù)器后,將該應(yīng)用程序中該緩存文件的存儲地址修改為上述云存儲地址。當(dāng)終端再次運行該緩存文件時,該應(yīng)用程序根據(jù)該云存儲地址訪問服務(wù)器,并調(diào)用服務(wù)器上存儲的該緩存文件。進一步地,終端修改應(yīng)用程序中該緩存文件的存儲地址后,刪除存儲在終端存儲器中的該緩存文件。
終端刪除該緩存文件后,終端實際上只存儲該緩存文件所在存儲位置的鏈接,也即上述云存儲地址。該緩存文件不再占用終端上的存儲空間。因此,可以節(jié)省終端上的存儲空間。
同時,當(dāng)終端需要再次運行該緩存文件時,終端可以訪問服務(wù)器,調(diào)用服務(wù)器上存儲的該緩存文件。從而,確保該緩存文件可被運行,避免了終端上無法打開該緩存文件的情況。
參考圖4,上述文件存儲方法中,終端與服務(wù)器的交互過程如下:a、終端使用用戶賬戶信息登錄服務(wù)器;b、終端將緩存文件上傳到服務(wù)器;服務(wù)器接收到終端上傳的緩存文件后,執(zhí)行步驟c、將緩存文件存儲到當(dāng)前用戶的賬戶目錄下;d、服務(wù)器向終端返回緩存文件的云存儲地址;終端接收到服務(wù)器返回的云存儲地址后,執(zhí)行步驟e、將緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
在一些實施例中,如圖2所示,將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件后,該文件存儲方法還可以包括以下步驟:
s160,判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔,其中第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔;
s170,若該時間間隔大于第二預(yù)設(shè)時間間隔,則向服務(wù)器發(fā)送刪除指令,以使得服務(wù)器根據(jù)該刪除指令刪除該緩存文件。
其中,終端將該緩存文件上傳到服務(wù)器后,可以進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔。其中,第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔。例如,第一預(yù)設(shè)時間間隔為3天時,第二預(yù)設(shè)時間間隔可以為3個月。
若該時間間隔大于第二預(yù)設(shè)時間間隔,說明該緩存文件已經(jīng)在相當(dāng)長的一段時間內(nèi)沒有被運行,該緩存文件再次被運行的需求很小。此時,終端可以向服務(wù)器發(fā)送刪除指令,該刪除指令指示服務(wù)器刪除該緩存文件。服務(wù)器接收到該刪除指令后,將該緩存文件予以刪除。
服務(wù)器刪除該緩存文件后,該緩存文件不再占用服務(wù)器上的存儲空間,從而可以節(jié)省服務(wù)器的存儲空間。
需要說明的是,步驟s160、s170的執(zhí)行可以與步驟s110至s140的執(zhí)行處在不同的時間。也即,終端在執(zhí)行步驟s110至s140后,可以間隔較長的一段時間(例如,2個月)再執(zhí)行步驟s160、s170。
具體實施時,本發(fā)明不受所描述的各個步驟的執(zhí)行順序的限制,在不產(chǎn)生沖突的情況下,某些步驟還可以采用其它順序進行或者同時進行。
由上可知,本發(fā)明實施例提供的文件存儲方法,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。該方案在緩存文件的運行頻率低并且最后一次運行的時間距離當(dāng)前時間長時,將緩存文件上傳到服務(wù)器,能夠節(jié)省終端上的存儲空間。
本發(fā)明實施例還提供一種文件存儲裝置,該裝置可以集成在終端中,該終端可以是智能手機、平板電腦、個人計算機等設(shè)備。
如圖5所示,文件存儲裝置200可以包括:第一判斷模塊201、第二判斷模塊202、發(fā)送模塊203、修改模塊204。
第一判斷模塊201,用于判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,該應(yīng)用程序包括但不限于即時通訊軟件,例如微信、騰訊qq等。該應(yīng)用程序在終端中存儲有大量的緩存文件。緩存文件包括但不限于文本、圖片、音頻、視頻等文件。
第一判斷模塊201可以依次判斷每一緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。其中,預(yù)設(shè)次數(shù)可以是預(yù)先設(shè)置并存儲在終端中的一個數(shù)值。例如,預(yù)設(shè)次數(shù)可以為5。用戶每查看一次該緩存文件,即可認為終端通過該應(yīng)用程序?qū)υ摼彺嫖募\行了一次。
在一些實施例中,如圖6所示,文件存儲裝置200還包括:監(jiān)控模塊205。
監(jiān)控模塊205,用于對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控;
第一判斷模塊201,用于當(dāng)所有緩存文件的數(shù)據(jù)量大小之和大于預(yù)設(shè)值時,依次判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,監(jiān)控模塊205可以對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控,以確定該應(yīng)用程序中的所有緩存文件在終端上占用多大的存儲空間。預(yù)設(shè)值可以是預(yù)先設(shè)置并存儲在終端中的一個數(shù)據(jù)量大小。例如,預(yù)設(shè)值可以為200m(兆字節(jié))。
當(dāng)監(jiān)控模塊205監(jiān)控到該應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和大于該預(yù)設(shè)值時,例如,該應(yīng)用程序中的圖片、音頻、視頻等緩存文件的數(shù)據(jù)量大小之和超過200m,則第一判斷模塊201依次對每一緩存文件的運行次數(shù)進行判斷,判斷該緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
需要說明的是,監(jiān)控模塊205對應(yīng)用程序中緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控時,是對應(yīng)用程序中所有的緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控,也即監(jiān)控應(yīng)用程序中的所有緩存文件所占用的存儲空間大小。
而第一判斷模塊201判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)時,是針對單個緩存文件進行判斷。文件存儲裝置200在執(zhí)行本發(fā)明實施例中的文件存儲方法時,是針對每個緩存文件逐個進行判斷和處理。
在一些實施例中,如圖7所示,第一判斷模塊201包括:獲取子模塊2011、統(tǒng)計子模塊2012、判斷子模塊2013。
獲取子模塊2011,用于依次獲取應(yīng)用程序中每一緩存文件的運行記錄;
統(tǒng)計子模塊2012,用于根據(jù)該運行記錄統(tǒng)計該緩存文件的運行次數(shù);
判斷子模塊2013,用于判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
其中,應(yīng)用程序中可以設(shè)置日志文件。該日志文件用于對緩存文件的運行情況進行記錄。獲取子模塊2011可以獲取每一緩存文件的運行記錄,然后統(tǒng)計子模塊2012根據(jù)運行記錄統(tǒng)計緩存文件的運行次數(shù)。隨后,判斷子模塊2013將該緩存文件的運行次數(shù)與該預(yù)設(shè)次數(shù)進行比較,以判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
第二判斷模塊202,用于在該運行次數(shù)小于預(yù)設(shè)次數(shù)時,進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔。
其中,第一預(yù)設(shè)時間間隔可以是預(yù)先設(shè)置并存儲在終端中的一個時間段。例如,第一預(yù)設(shè)時間間隔可以為3天。當(dāng)?shù)谝慌袛嗄K201判斷出緩存文件的運行次數(shù)小于預(yù)設(shè)次數(shù)時,第二判斷模塊202進一步確定該緩存文件最后一次運行的時間,并判斷該最后依次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔。
例如,該緩存文件最后一次運行是在5天前。則該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔為5天,大于第一預(yù)設(shè)時間間隔3天。
其中,運行可以包括查看、修改等針對該緩存文件的操作。
在一些實施例中,第二判斷模塊202可以通過該緩存文件的運行記錄來確定該緩存文件最后一次運行的時間。
發(fā)送模塊203,用于在該時間間隔大于第一預(yù)設(shè)時間間隔時,將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址。
其中,終端可以通過因特網(wǎng)與服務(wù)器進行通信。終端和服務(wù)器組成一個通信系統(tǒng)。該服務(wù)器可以為上述應(yīng)用程序的網(wǎng)絡(luò)服務(wù)器。例如,該應(yīng)用程序為微信時,該服務(wù)器可以是提供微信應(yīng)用程序的廠商所提供的服務(wù)器。
當(dāng)?shù)谝慌袛嗄K201判斷出該緩存文件的運行次數(shù)小于預(yù)設(shè)次數(shù),并且第二判斷模塊202該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔大于第一預(yù)設(shè)時間間隔時,說明該緩存文件的運行頻率低,并且該緩存文件長期未運行。此時,發(fā)送模塊203可以將該緩存文件上傳到服務(wù)器。服務(wù)器接收到終端上傳的緩存文件后,將該緩存文件進行存儲,并向終端返回該緩存文件的云存儲地址。
在一些實施例中,發(fā)送模塊203用于執(zhí)行以下步驟:
若該時間間隔大于第一預(yù)設(shè)時間間隔,則獲取當(dāng)前用戶的賬戶信息;
將該緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄,并接收該服務(wù)器返回的云存儲地址。
其中,當(dāng)?shù)诙袛嗄K202判斷出該時間間隔大于第一預(yù)設(shè)時間間隔時,發(fā)送模塊203獲取上述應(yīng)用程序中當(dāng)前的用戶賬戶信息,并使用該賬戶信息訪問服務(wù)器。其中,該賬戶信息可以包括賬戶名和密碼。終端通過獲取到的賬戶名和密碼登錄服務(wù)器。
由于存在大量的用戶在服務(wù)器上進行注冊,因此服務(wù)器對于每一個賬戶均設(shè)置有對應(yīng)的賬戶目錄。該賬戶目錄用于存儲該賬戶對應(yīng)的用戶所上傳的緩存文件。
發(fā)送模塊203獲取到當(dāng)前用戶的賬戶信息后,使用該賬戶信息訪問服務(wù)器,并將上述緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄。服務(wù)器將該緩存文件存儲到與該賬戶信息對應(yīng)的賬戶目錄后,向當(dāng)前用戶返回該緩存文件的云存儲地址。
修改模塊204,用于將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
其中,在緩存文件上傳到服務(wù)器之前,該緩存文件存儲在終端的存儲器中。該緩存文件在終端存儲器中具有一個存儲地址(即存儲路徑)。應(yīng)用程序中該緩存文件所在的緩存位置存儲有該存儲地址。也即,應(yīng)用程序中該緩存文件的緩存位置指向該緩存文件的實際存儲地址。例如,即時通訊軟件的通訊記錄中存儲有該存儲地址。當(dāng)終端運行該緩存文件時,該應(yīng)用程序根據(jù)該存儲地址調(diào)用該緩存文件。
發(fā)送模塊203將緩存文件上傳到服務(wù)器后,修改模塊204將該應(yīng)用程序中該緩存文件的存儲地址修改為上述云存儲地址。當(dāng)終端再次運行該緩存文件時,該應(yīng)用程序根據(jù)該云存儲地址訪問服務(wù)器,并調(diào)用服務(wù)器上存儲的該緩存文件。進一步地,修改模塊204修改應(yīng)用程序中該緩存文件的存儲地址后,刪除存儲在終端存儲器中的該緩存文件。
刪除該緩存文件后,終端實際上只存儲該緩存文件所在存儲位置的鏈接,也即上述云存儲地址。該緩存文件不再占用終端上的存儲空間。因此,可以節(jié)省終端上的存儲空間。
同時,當(dāng)終端需要再次運行該緩存文件時,終端可以訪問服務(wù)器,調(diào)用服務(wù)器上存儲的該緩存文件。從而,確保該緩存文件可被運行,避免了終端上無法打開該緩存文件的情況。
在一些實施例中,如圖8所示,文件存儲裝置200還包括:第三判斷模塊206、刪除模塊207。
第三判斷模塊206,用于判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔,其中第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔;
刪除模塊207,用于在該時間間隔大于第二預(yù)設(shè)時間間隔,則向服務(wù)器發(fā)送刪除指令,以使得服務(wù)器根據(jù)該刪除指令刪除該緩存文件。
其中,發(fā)送模塊203將該緩存文件上傳到服務(wù)器后,第三判斷模塊206可以進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔。其中,第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔。例如,第一預(yù)設(shè)時間間隔為3天時,第二預(yù)設(shè)時間間隔可以為3個月。
若該時間間隔大于第二預(yù)設(shè)時間間隔,說明該緩存文件已經(jīng)在相當(dāng)長的一段時間內(nèi)沒有被運行,該緩存文件再次被運行的需求很小。此時,刪除模塊207可以向服務(wù)器發(fā)送刪除指令,該刪除指令指示服務(wù)器刪除該緩存文件。服務(wù)器接收到該刪除指令后,將該緩存文件予以刪除。
服務(wù)器刪除該緩存文件后,該緩存文件不再占用服務(wù)器上的存儲空間,從而可以節(jié)省服務(wù)器的存儲空間。
具體實施時,以上各個模塊可以作為獨立的實體來實現(xiàn),也可以進行任意組合,作為同一或若干個實體來實現(xiàn)。
由上可知,本發(fā)明實施例提供的文件存儲裝置200,通過第一判斷模塊201判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);第二判斷模塊202在該運行次數(shù)小于預(yù)設(shè)次數(shù)時,進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;發(fā)送模塊203在該時間間隔大于第一預(yù)設(shè)時間間隔時,將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;修改模塊204將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。該方案在緩存文件的運行頻率低并且最后一次運行的時間距離當(dāng)前時間長時,將緩存文件上傳到服務(wù)器,能夠節(jié)省終端上的存儲空間。
本發(fā)明實施例還提供一種終端,該終端可以是智能手機、平板電腦、個人計算機等設(shè)備。
如圖9所示,終端300可以包括:第一判斷模塊301、第二判斷模塊302、發(fā)送模塊303、修改模塊304。
第一判斷模塊301,用于判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);
第二判斷模塊302,用于在該運行次數(shù)小于預(yù)設(shè)次數(shù)時,進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;
發(fā)送模塊303,用于在該時間間隔大于第一預(yù)設(shè)時間間隔時,將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;
修改模塊304,用于將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
在一些實施例中,第一判斷模塊301包括:獲取子模塊、統(tǒng)計子模塊、判斷子模塊。
獲取子模塊,用于獲取應(yīng)用程序中緩存文件的運行記錄;
統(tǒng)計子模塊,用于根據(jù)該運行記錄統(tǒng)計該緩存文件的運行次數(shù);
判斷子模塊,用于判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
在一些實施例中,發(fā)送模塊303用于執(zhí)行以下步驟:
若該時間間隔大于第一預(yù)設(shè)時間間隔,則獲取當(dāng)前用戶的賬戶信息;
將該緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄,并接收該服務(wù)器返回的云存儲地址。
在一些實施例中,終端300還包括:監(jiān)控模塊。
監(jiān)控模塊,用于對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控;
該第一判斷模塊301,用于當(dāng)所有緩存文件的數(shù)據(jù)量大小之和大于預(yù)設(shè)值時,依次判斷應(yīng)用程序中每一緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
在一些實施例中,終端300還包括:第三判斷模塊、刪除模塊。
第三判斷模塊,用于判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔,其中第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔;
刪除模塊,用于在該時間間隔大于第二預(yù)設(shè)時間間隔時,向服務(wù)器發(fā)送刪除指令,以使得服務(wù)器根據(jù)該刪除指令刪除該緩存文件。
本發(fā)明實施例還提供另一種終端。如圖10所示,終端400可以包括射頻(rf,radiofrequency)電路401、包括有一個或一個以上計算機可讀存儲介質(zhì)的存儲器402、輸入單元403、顯示單元404、傳感器405、音頻電路406、無線保真(wifi,wirelessfidelity)模塊407、包括有一個或者一個以上處理核心的處理器408、以及電源409等部件。
射頻電路401可以通過無線通信與服務(wù)器或其他電子設(shè)備通信,完成與服務(wù)器或其他電子設(shè)備的信息收發(fā)。
存儲器402可用于存儲應(yīng)用程序和數(shù)據(jù)。存儲器402存儲的應(yīng)用程序中包含有可執(zhí)行程序代碼。應(yīng)用程序可以組成各種功能模塊。處理器408通過運行存儲在存儲器402的應(yīng)用程序,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。
輸入單元403可用于接收輸入的數(shù)字、字符信息或用戶特征信息(比如指紋),以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號輸入。
顯示單元404可用于顯示由用戶輸入的信息或提供給用戶的信息以及終端的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。
終端還可包括至少一種傳感器405,比如光傳感器、運動傳感器以及其他傳感器。
音頻電路406可通過揚聲器、傳聲器提供用戶與終端的音頻接口。
無線保真(wifi)屬于短距離無線傳輸技術(shù),終端通過無線保真模塊407可以與其他終端或服務(wù)器進行通信。
處理器408是終端的控制中心,利用各種接口和線路連接整個終端的各個部分,通過運行或執(zhí)行存儲在存儲器402內(nèi)的應(yīng)用程序,以及調(diào)用存儲在存儲器402內(nèi)的數(shù)據(jù),執(zhí)行終端的各種功能和處理數(shù)據(jù),從而對終端進行整體監(jiān)控。
終端還包括給各個部件供電的電源409(比如電池)。
盡管圖10中未示出,終端400還可以包括攝像頭、藍牙模塊等,在此不再贅述。
在本實施例中,終端中的處理器408會按照如下的指令,將一個或一個以上的應(yīng)用程序的進程對應(yīng)的可執(zhí)行程序代碼加載到存儲器402中,并由處理器408來運行存儲在存儲器402中的應(yīng)用程序,從而實現(xiàn)各種功能:
判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);
若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;
若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;
將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。
在一些實施例中,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)時,處理器408用于執(zhí)行以下步驟:獲取應(yīng)用程序中緩存文件的運行記錄;根據(jù)該運行記錄統(tǒng)計該緩存文件的運行次數(shù);判斷該運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
在一些實施例中,若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址時,處理器408用于執(zhí)行以下步驟:若該時間間隔大于第一預(yù)設(shè)時間間隔,則獲取當(dāng)前用戶的賬戶信息;將該緩存文件上傳到服務(wù)器上與該賬戶信息對應(yīng)的賬戶目錄,并接收該服務(wù)器返回的云存儲地址。
在一些實施例中,判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)前,處理器408還用于執(zhí)行以下步驟:對應(yīng)用程序中所有緩存文件的數(shù)據(jù)量大小之和進行監(jiān)控;當(dāng)所有緩存文件的數(shù)據(jù)量大小之和大于預(yù)設(shè)值時,依次判斷應(yīng)用程序中每一緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù)。
在一些實施例中,將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件后,處理器408還用于執(zhí)行以下步驟:判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第二預(yù)設(shè)時間間隔,其中第二預(yù)設(shè)時間間隔大于第一預(yù)設(shè)時間間隔;若該時間間隔大于第二預(yù)設(shè)時間間隔,則向服務(wù)器發(fā)送刪除指令,以使得服務(wù)器根據(jù)該刪除指令刪除該緩存文件。
上述實施例中,對各個實施例的描述都各有側(cè)重,某些實施例中沒有詳細描述的部分,可以參見前面對文件存儲方法的詳細描述,在此不再贅述。
由上可知,本發(fā)明實施例提供了一種終端,該終端判斷應(yīng)用程序中緩存文件的運行次數(shù)是否小于預(yù)設(shè)次數(shù);若該運行次數(shù)小于預(yù)設(shè)次數(shù),則進一步判斷該緩存文件最后一次運行的時間與當(dāng)前時間的時間間隔是否大于第一預(yù)設(shè)時間間隔;若該時間間隔大于第一預(yù)設(shè)時間間隔,則將該緩存文件上傳到服務(wù)器,并接收該服務(wù)器返回的云存儲地址;將應(yīng)用程序中該緩存文件的存儲地址修改為該云存儲地址,并刪除該緩存文件。該方案在緩存文件的運行頻率低并且最后一次運行的時間距離當(dāng)前時間長時,將緩存文件上傳到服務(wù)器,能夠節(jié)省終端上的存儲空間。
需要說明的是,本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:只讀存儲器(rom,readonlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁盤或光盤等。
以上對本發(fā)明實施例所提供的一種文件存儲方法、裝置及終端進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。