本發(fā)明涉及終端技術(shù)領(lǐng)域,更具體地說,涉及一種相機(jī)文件管理方法及終端。
背景技術(shù):
在移動(dòng)互聯(lián)網(wǎng)時(shí)代,隨著智能終端的推廣和普及,終端的相機(jī)功能愈來愈智能化,相機(jī)應(yīng)用的使用頻率越來越高,同時(shí),用戶也在不斷追求高品質(zhì)的攝像體驗(yàn)。高像素、急速對(duì)焦、快速閃光、拍照實(shí)時(shí)濾鏡、實(shí)時(shí)美顏漸漸成為標(biāo)配,對(duì)相機(jī)的拍照效果要求越來越高。
但是,目前的相機(jī)應(yīng)用(Camera APP)依賴于系統(tǒng)的多媒體數(shù)據(jù)庫,其可以調(diào)用系統(tǒng)媒體數(shù)據(jù)庫中的文件記錄,從而找到對(duì)應(yīng)的文件夾下的相機(jī)文件(指由相機(jī)拍攝的照片、視頻文件)。當(dāng)相機(jī)文件被其他應(yīng)用修改后,無法實(shí)時(shí)校驗(yàn)、同步相機(jī)多媒體數(shù)據(jù)庫中的文件記錄,進(jìn)而也無法對(duì)相機(jī)文件列表進(jìn)行更新。例如:
相機(jī)應(yīng)用的相機(jī)文件列表中“相機(jī)文件A”、“相機(jī)文件B”、“相機(jī)文件C”等對(duì)應(yīng)的相機(jī)文件都保存在SD(Secure Digital,安全數(shù)碼)卡中,移出該SD卡,此后再對(duì)相機(jī)應(yīng)用的相機(jī)文件列表中“相機(jī)文件A”、“相機(jī)文件B”、“相機(jī)文件C”等進(jìn)行操作(例如查看、播放或編輯等操作)時(shí),會(huì)發(fā)現(xiàn)上述相機(jī)文件不存在,此時(shí)才會(huì)對(duì)相機(jī)應(yīng)用的媒體數(shù)據(jù)庫中上述各相機(jī)文件的文件記錄予以刪除。因此,現(xiàn)有的相機(jī)應(yīng)用在操作時(shí),不會(huì)根據(jù)相機(jī)文件的變化而主動(dòng)對(duì)媒體數(shù)據(jù)庫中的文件記錄進(jìn)行對(duì)應(yīng)更新,導(dǎo)致當(dāng)文件不存在時(shí),用戶在相機(jī)應(yīng)用的用戶交互界面中對(duì)不存在的文件進(jìn)行操作,誤導(dǎo)用戶進(jìn)行不必要的操作,降低了用戶的體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于:當(dāng)前相機(jī)應(yīng)用不會(huì)根據(jù)相機(jī)文件的變化而對(duì)媒體數(shù)據(jù)庫中的文件記錄進(jìn)行對(duì)應(yīng)更新,導(dǎo)致用戶對(duì)不存在的相機(jī)文件進(jìn)行操作,提供一種相機(jī)文件管理方法及終端。
為解決上述技術(shù)問題,本發(fā)明提供一種相機(jī)文件管理方法,所述方法包括:
對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描;
掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),設(shè)置為未激活狀態(tài)的文件記錄不在所述相機(jī)應(yīng)用的用戶交互顯示界面顯示。
可選地,所述對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描包括:全面掃描和定點(diǎn)掃描中的至少一種:
所述全面掃描包括:
在預(yù)設(shè)掃描條件觸發(fā)時(shí),獲取系統(tǒng)中當(dāng)前各相機(jī)文件的相機(jī)文件屬性信息,并獲取所述媒體數(shù)據(jù)庫中當(dāng)前的各文件記錄中的文件屬性記錄信息;
將獲取的所述相機(jī)文件屬性信息與所述各文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況;
所述定點(diǎn)掃描包括:
接收到第三方應(yīng)用發(fā)送的某一相機(jī)文件更新通知時(shí),獲取該相機(jī)文件的相機(jī)文件屬性信息,并到所述媒體數(shù)據(jù)庫中獲取該相機(jī)文件的文件屬性記錄信息;
將獲取的所述相機(jī)文件屬性信息與所述文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
可選地,所述對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描包括全面掃描時(shí),所述預(yù)設(shè)掃描條件包括以下至少一種:
相機(jī)應(yīng)用啟動(dòng)或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面;
外部存儲(chǔ)設(shè)備移除或插入;
接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知。
可選地,所述相機(jī)文件屬性信息和所述文件屬性記錄信息均包括文件名稱、存儲(chǔ)路徑、文件尺寸以及文件最后修改時(shí)間;
將獲取的所述相機(jī)文件屬性信息與所述文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況包括:
當(dāng)某一相機(jī)文件屬性信息中的文件存儲(chǔ)路徑和文件最后修改時(shí)間與所述各文件屬性記錄信息中的存儲(chǔ)路徑和最后修改時(shí)間都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為新增文件;
或,
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與所述某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,但該文件屬性記錄信息對(duì)應(yīng)的文件記錄為未激活狀態(tài)時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為恢復(fù)文件;
或,
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件尺寸匹配,但二者包含的文件存儲(chǔ)路徑不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件存儲(chǔ)路徑被修改;
或,
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸匹配,但二者包含的最后修改時(shí)間不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件最后修改時(shí)間被修改;
或,
當(dāng)某一相機(jī)文件屬性信息中的存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的存儲(chǔ)路徑、文件尺寸匹配,但二者包含的文件名稱不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件名稱被修改;若該相機(jī)文件屬性信息中的存儲(chǔ)路徑與某一文件屬性記錄信息中的存儲(chǔ)路徑,但二者包含的文件名稱以及文件尺寸不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為替換文件;
或,
當(dāng)某一文件屬性記錄信息與所述各相機(jī)文件屬性信息都不匹配且不屬于上述任一情況時(shí),則確定該文件屬性記錄信息對(duì)應(yīng)的相機(jī)文件不存在。
可選地,所述將獲取的所述相機(jī)文件屬性信息與所述文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況之后,所述方法還包括:
當(dāng)確定的結(jié)果為相機(jī)文件為新增文件時(shí),還包括提取該新增文件的文件記錄加入所述媒體數(shù)據(jù)庫中;
當(dāng)確定的結(jié)果為相機(jī)文件為恢復(fù)文件時(shí),還包括將該相機(jī)文件對(duì)應(yīng)的文件記錄由未激活狀態(tài)修改為激活狀態(tài);
當(dāng)確定的結(jié)果為相機(jī)文件存儲(chǔ)路徑被修改時(shí),還包括將該相機(jī)文件對(duì)應(yīng)的文件記錄中的存儲(chǔ)路徑更新為該相機(jī)文件的相機(jī)文件屬性信息中的存儲(chǔ)路徑;
當(dāng)確定的結(jié)果為相機(jī)文件名稱被修改時(shí),還包括將該相機(jī)文件對(duì)應(yīng)的文件記錄中的文件名稱更新為該相機(jī)文件的相機(jī)文件屬性信息中的文件名稱;
當(dāng)確定的結(jié)果為相機(jī)文件為替換文件時(shí),還包括提取該相機(jī)文件的文件記錄加入所述媒體數(shù)據(jù)庫中,并將與之存儲(chǔ)路徑匹配的文件記錄刪除。
可選地,對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描完之后,所述方法還包括:
獲取所述媒體數(shù)據(jù)庫中狀態(tài)為未激活狀態(tài)、且滿足失效條件的文件記錄作為失效文件記錄,所述失效條件為未使用時(shí)間超過預(yù)設(shè)時(shí)間值和/或使用頻率小于預(yù)設(shè)使用頻率;
將獲取到的失效文件記錄進(jìn)行刪除。
可選地,本發(fā)明還提供了一種終端,包括:
文件掃描模塊,用于對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描;
處理模塊,用于在所述文件掃描模塊掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),設(shè)置為未激活狀態(tài)的文件記錄不在所述相機(jī)應(yīng)用的用戶交互顯示界面顯示。
可選地,所述文件掃描模塊用于在預(yù)設(shè)掃描條件觸發(fā)時(shí),獲取系統(tǒng)中當(dāng)前各相機(jī)文件的相機(jī)文件屬性信息,并獲取所述媒體數(shù)據(jù)庫中當(dāng)前的各文件記錄中的文件屬性記錄信息,將獲取的所述相機(jī)文件屬性信息與所述各文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況;
或,
所述文件掃描模塊用于接收到第三方應(yīng)用發(fā)送的某一相機(jī)文件更新通知時(shí),獲取該相機(jī)文件的相機(jī)文件屬性信息,并到所述媒體數(shù)據(jù)庫中獲取該相機(jī)文件的文件屬性記錄信息,將獲取的所述相機(jī)文件屬性信息與所述文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
可選地,所述相機(jī)文件屬性信息和所述文件屬性記錄信息均包括文件名稱、存儲(chǔ)路徑、文件尺寸以及文件最后修改時(shí)間;
所述文件掃描模塊用于:
判斷某一相機(jī)文件屬性信息中的文件存儲(chǔ)路徑和文件最后修改時(shí)間與所述各文件屬性記錄信息中的存儲(chǔ)路徑和最后修改時(shí)間都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為新增文件;
或,
判斷某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與所述某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,但該文件屬性記錄信息對(duì)應(yīng)的文件記錄為未激活狀態(tài)時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為恢復(fù)文件;
或,
判斷某一相機(jī)文件屬性信息中的文件名稱、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件尺寸匹配,但二者包含的文件存儲(chǔ)路徑不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件存儲(chǔ)路徑被修改;
或,
判斷某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸匹配,但二者包含的最后修改時(shí)間不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件最后修改時(shí)間被修改;
或,
判斷某一相機(jī)文件屬性信息中的存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的存儲(chǔ)路徑、文件尺寸匹配,但二者包含的文件名稱不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件名稱被修改;若該相機(jī)文件屬性信息中的存儲(chǔ)路徑與某一文件屬性記錄信息中的存儲(chǔ)路徑,但二者包含的文件名稱以及文件尺寸不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),則確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為替換文件;
或,
判斷某一文件屬性記錄信息與所述各相機(jī)文件屬性信息都不匹配且不屬于上述任一情況時(shí),則確定該文件屬性記錄信息對(duì)應(yīng)的相機(jī)文件不存在。
可選地,所述處理模塊還用于在所述文件掃描模塊確定的結(jié)果為相機(jī)文件為新增文件時(shí),提取該新增文件的文件記錄加入所述媒體數(shù)據(jù)庫中;
在所述文件掃描模塊確定的結(jié)果為相機(jī)文件為新增文件時(shí),提取該新增文件的文件記錄加入所述媒體數(shù)據(jù)庫中;
在所述文件掃描模塊確定的結(jié)果為相機(jī)文件為恢復(fù)文件時(shí),將該相機(jī)文件對(duì)應(yīng)的文件記錄由未激活狀態(tài)修改為激活狀態(tài);
在所述文件掃描模塊確定的結(jié)果為相機(jī)文件存儲(chǔ)路徑被修改時(shí),將該相機(jī)文件對(duì)應(yīng)的文件記錄中的存儲(chǔ)路徑更新為該相機(jī)文件的相機(jī)文件屬性信息中的存儲(chǔ)路徑;
在所述文件掃描模塊確定的結(jié)果為相機(jī)文件名稱被修改時(shí),將該相機(jī)文件對(duì)應(yīng)的文件記錄中的文件名稱更新為該相機(jī)文件的相機(jī)文件屬性信息中的文件名稱;
在所述文件掃描模塊確定的結(jié)果為相機(jī)文件為替換文件時(shí),提取該相機(jī)文件的文件記錄加入所述媒體數(shù)據(jù)庫中,并將與之存儲(chǔ)路徑匹配的文件記錄刪除。
有益效果
本發(fā)明提供的相機(jī)文件管理方法及終端,通過對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描,當(dāng)掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),設(shè)置為未激活狀態(tài)的文件記錄不在所述相機(jī)應(yīng)用的用戶交互顯示界面顯示。因此,本發(fā)明的方案至少具備以下優(yōu)點(diǎn):
當(dāng)相機(jī)文件發(fā)生改變導(dǎo)致原相機(jī)文件不存在后,對(duì)應(yīng)的文件記錄由于動(dòng)態(tài)更新為未激活狀態(tài),從而在相機(jī)應(yīng)用的用戶交互顯示界面不再顯示,可以避免對(duì)不存在的文件進(jìn)行查看、編輯或者播放等,可提升用戶體驗(yàn)的滿意;
同時(shí),將不存在的相機(jī)文件的文件記錄更新為未激活狀態(tài),而不是刪除,對(duì)于相機(jī)文件的分類TAG、收藏、是否設(shè)置為壁紙或聯(lián)系人參數(shù)等參數(shù)信息也不會(huì)造成任何改動(dòng)。在該不存在的相機(jī)文件又在系統(tǒng)中恢復(fù)(例如移除的SD卡又插入)后,由于其對(duì)應(yīng)的文件記錄并未刪除,因此在媒體數(shù)據(jù)庫中的文件記錄可對(duì)應(yīng)找回,只需要將其狀態(tài)修改為激活狀態(tài)即可,因此可以保證相機(jī)文件的正常、快速的恢復(fù),可進(jìn)一步提升用戶體驗(yàn)。
附圖說明
下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,附圖中:
圖1-1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的移動(dòng)終端的硬件結(jié)構(gòu)示意圖;
圖1-2為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的相機(jī)硬件結(jié)構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例一提供的相機(jī)文件管理方法流程示意圖;
圖3為本發(fā)明實(shí)施例一提供的全面掃描流程示意圖;
圖4為本發(fā)明實(shí)施例一提供的定點(diǎn)掃描流程示意圖;
圖5為本發(fā)明實(shí)施例一提供的相機(jī)文件篩選流程示意圖;
圖6為本發(fā)明實(shí)施例一提供的失效文件記錄清除流程示意圖;
圖7為本發(fā)明實(shí)施例三提供的終端結(jié)構(gòu)示意圖;
圖8為本發(fā)明實(shí)施例四提供的一種相機(jī)文件管理方法流程示意圖。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明的終端對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描,當(dāng)掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài)避免其在相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示。這樣,當(dāng)相機(jī)文件發(fā)生改變,導(dǎo)致原相機(jī)文件不存在后,對(duì)應(yīng)的文件記錄在相機(jī)應(yīng)用的用戶交互顯示界面不再顯示,可以避免對(duì)不存在的文件進(jìn)行查看、編輯或者播放等,可提升用戶體驗(yàn)的滿意。同時(shí),在該不存在的相機(jī)文件恢復(fù)后,由于其對(duì)應(yīng)的文件記錄并未刪除,因此在媒體數(shù)據(jù)庫中的文件記錄可對(duì)應(yīng)找回,只需要將其狀態(tài)修改為激活狀態(tài)即可,因此可以保證相機(jī)文件的正常、快速的恢復(fù)。
本發(fā)明中的終端既包含具有相機(jī)應(yīng)用的移動(dòng)終端,也包含具有相機(jī)應(yīng)用的非固定類終端。下面僅以移動(dòng)終端進(jìn)行示例說明。移動(dòng)終端可以以各種形式來實(shí)施。例如,本發(fā)明中描述的終端可以包括諸如移動(dòng)電話、智能電話、筆記本電腦、數(shù)字廣播接收器、PDA(個(gè)人數(shù)字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導(dǎo)航裝置等等的移動(dòng)終端以及諸如數(shù)字TV、臺(tái)式計(jì)算機(jī)等等的固定終端。下面,假設(shè)終端是移動(dòng)終端。然而,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動(dòng)目的的元件之外,根據(jù)本發(fā)明的實(shí)施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。
圖1-1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的移動(dòng)終端的硬件結(jié)構(gòu)示意圖。
移動(dòng)終端100可以包括無線通信單元110、A/V(音頻/視頻)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲(chǔ)器160、接口單元170、控制器180和電源單元190等等。圖1-1示出了具有各種組件的移動(dòng)終端,但是應(yīng)理解的是,并不要求實(shí)施所有示出的組件??梢蕴娲貙?shí)施更多或更少的組件。將在下面詳細(xì)描述移動(dòng)終端的元件。
無線通信單元110通常包括一個(gè)或多個(gè)組件,其允許移動(dòng)終端100與無線通信系統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。例如,無線通信單元可以移動(dòng)通信模塊無線互聯(lián)網(wǎng)模塊、短程通信模塊等等。
A/V輸入單元120用于接收音頻或視頻信號(hào)。A/V輸入單元120可以包括相機(jī)121和麥克風(fēng)1220,相機(jī)121對(duì)在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態(tài)圖片或視頻的圖像數(shù)據(jù)進(jìn)行處理。處理后的圖像幀可以顯示在顯示模塊151上。經(jīng)相機(jī)121處理后的圖像幀可以存儲(chǔ)在存儲(chǔ)器160(或其它存儲(chǔ)介質(zhì))中或者經(jīng)由無線通信單元110進(jìn)行發(fā)送,可以根據(jù)移動(dòng)終端的構(gòu)造提供兩個(gè)或更多相機(jī)121。麥克風(fēng)122可以在電話通話模式、記錄模式、語音識(shí)別模式等等運(yùn)行模式中經(jīng)由麥克風(fēng)接收聲音(音頻數(shù)據(jù)),并且能夠?qū)⑦@樣的聲音處理為音頻數(shù)據(jù)。處理后的音頻(語音)數(shù)據(jù)可以在電話通話模式的情況下轉(zhuǎn)換為可經(jīng)由移動(dòng)通信模塊112發(fā)送到移動(dòng)通信基站的格式輸出。麥克風(fēng)122可以實(shí)施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發(fā)送音頻信號(hào)的過程中產(chǎn)生的噪聲或者干擾。
用戶輸入單元130可以根據(jù)用戶輸入的命令生成鍵輸入數(shù)據(jù)以控制移動(dòng)終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋?zhàn)衅?、觸摸板(例如,檢測由于被接觸而導(dǎo)致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。特別地,當(dāng)觸摸板以層的形式疊加在顯示模塊151上時(shí),可以形成觸摸屏。
感測單元140檢測移動(dòng)終端100的當(dāng)前狀態(tài),(例如,移動(dòng)終端100的打開或關(guān)閉狀態(tài))、移動(dòng)終端100的位置、用戶對(duì)于移動(dòng)終端100的接觸(即,觸摸輸入)的有無、移動(dòng)終端100的取向、移動(dòng)終端100的加速或減速移動(dòng)和方向等等,并且生成用于控制移動(dòng)終端100的操作的命令或信號(hào)。
接口單元170用作至少一個(gè)外部裝置與移動(dòng)終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機(jī)端口、外部電源(或電池充電器)端口、有線或無線數(shù)據(jù)端口、存儲(chǔ)卡端口、用于連接具有識(shí)別模塊的裝置的端口、音頻輸入/輸出(I/O)端口、視頻I/O端口、耳機(jī)端口等等。識(shí)別模塊可以是存儲(chǔ)用于驗(yàn)證用戶使用移動(dòng)終端100的各種信息并且可以包括用戶識(shí)別模塊(UIM)、客戶識(shí)別模塊(SIM)、通用客戶識(shí)別模塊(USIM)等等。另外,具有識(shí)別模塊的裝置(下面稱為"識(shí)別裝置")可以采取智能卡的形式,因此,識(shí)別裝置可以經(jīng)由端口或其它連接裝置與移動(dòng)終端100連接。接口單元170可以用于接收來自外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿?dòng)終端100內(nèi)的一個(gè)或多個(gè)元件或者可以用于在移動(dòng)終端和外部裝置之間傳輸數(shù)據(jù)。
另外,當(dāng)移動(dòng)終端100與外部底座連接時(shí),接口單元170可以用作允許通過其將電力從底座提供到移動(dòng)終端100的路徑或者可以用作允許從底座輸入的各種命令信號(hào)通過其傳輸?shù)揭苿?dòng)終端的路徑。從底座輸入的各種命令信號(hào)或電力可以用作用于識(shí)別移動(dòng)終端是否準(zhǔn)確地安裝在底座上的信號(hào)。輸出單元150被構(gòu)造為以視覺、音頻和/或觸覺方式提供輸出信號(hào)(例如,音頻信號(hào)、視頻信號(hào)、警報(bào)信號(hào)、振動(dòng)信號(hào)等等)。
輸出單元150可以包括顯示模塊151、音頻輸出模塊152等等。
顯示模塊151可以顯示在移動(dòng)終端100中處理的信息。例如,當(dāng)移動(dòng)終端100處于電話通話模式時(shí),顯示模塊151可以顯示與通話或其它通信(例如,文本消息收發(fā)、多媒體文件下載等等)相關(guān)的用戶界面(UI)或圖形用戶界面(GUI)。又例如,其可以對(duì)終端中存儲(chǔ)的各種視頻文件,包含但不限于錄制的視頻文件、從網(wǎng)絡(luò)或其他終端獲取的視頻文件進(jìn)行播放顯示。當(dāng)移動(dòng)終端100處于視頻通話模式或者圖像捕獲模式時(shí),顯示模塊151還可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關(guān)功能的UI或GUI等等。
同時(shí),當(dāng)顯示模塊151和觸摸板以層的形式彼此疊加以形成觸摸屏?xí)r,顯示模塊151可以用作輸入裝置和輸出裝置。顯示模塊151可以包括液晶顯示器(LCD)、薄膜晶體管LCD(TFT-LCD)、有機(jī)發(fā)光二極管(OLED)顯示器、柔性顯示器、三維(3D)顯示器等等中的至少一種。這些顯示器中的一些可以被構(gòu)造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為TOLED(透明有機(jī)發(fā)光二極管)顯示器等等。根據(jù)特定想要的實(shí)施方式,移動(dòng)終端100可以包括兩個(gè)或更多顯示模塊(或其它顯示裝置),例如,移動(dòng)終端可以包括外部顯示模塊(未示出)和內(nèi)部顯示模塊(未示出)。觸摸屏可用于檢測觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
音頻輸出模塊152可以在移動(dòng)終端處于呼叫信號(hào)接收模式、通話模式、記錄模式、語音識(shí)別模式、廣播接收模式等等模式下時(shí),將無線通信單元110接收的或者在存儲(chǔ)器160中存儲(chǔ)的音頻數(shù)據(jù)轉(zhuǎn)換音頻信號(hào)并且輸出為聲音。而且,音頻輸出模塊152可以提供與移動(dòng)終端100執(zhí)行的特定功能相關(guān)的音頻輸出(例如,呼叫信號(hào)接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚(yáng)聲器、蜂鳴器等等。
存儲(chǔ)器160可以存儲(chǔ)由控制器180執(zhí)行的處理和控制操作的軟件程序等等,或者可以暫時(shí)地存儲(chǔ)己經(jīng)輸出或?qū)⒁敵龅臄?shù)據(jù)(例如,電話簿、消息、靜態(tài)圖像、視頻等等)。而且,存儲(chǔ)器160可以存儲(chǔ)關(guān)于當(dāng)觸摸施加到觸摸屏?xí)r輸出的各種方式的振動(dòng)和音頻信號(hào)的數(shù)據(jù)。存儲(chǔ)器160存儲(chǔ)數(shù)據(jù)的方式可以以數(shù)據(jù)緩存隊(duì)列的方式進(jìn)行存儲(chǔ),該數(shù)據(jù)緩存隊(duì)列可以由控制器180中的隊(duì)列生成模塊生成,且該數(shù)據(jù)緩存隊(duì)列中數(shù)據(jù)存儲(chǔ)的規(guī)則可以由控制器180中的存儲(chǔ)控制模塊進(jìn)行控制。應(yīng)當(dāng)理解的是,隊(duì)列生成模塊和存儲(chǔ)控制模塊可以內(nèi)置于控制器180中,也可以獨(dú)立于控制器180單獨(dú)設(shè)置。
存儲(chǔ)器160可以包括至少一種類型的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)包括閃存、硬盤、多媒體卡、卡型存儲(chǔ)器(例如,SD或DX存儲(chǔ)器等等)、隨機(jī)訪問存儲(chǔ)器(RAM)、靜態(tài)隨機(jī)訪問存儲(chǔ)器(SRAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、可編程只讀存儲(chǔ)器(PROM)、磁性存儲(chǔ)器、磁盤、光盤等等。而且,移動(dòng)終端100可以與通過網(wǎng)絡(luò)連接執(zhí)行存儲(chǔ)器160的存儲(chǔ)功能的網(wǎng)絡(luò)存儲(chǔ)裝置協(xié)作。
控制器180通??刂埔苿?dòng)終端的總體操作。例如,控制器180執(zhí)行與語音通話、數(shù)據(jù)通信、視頻通話等等相關(guān)的控制和處理。另外,控制器180可以包括用于進(jìn)行文件掃描的文件掃描模塊1810,用于進(jìn)行文件記錄處理的處理模塊1820。
電源單元190在控制器180的控制下接收外部電力或內(nèi)部電力并且提供操作各元件和組件所需的適當(dāng)?shù)碾娏Α?/p>
這里描述的各種實(shí)施方式可以以使用例如計(jì)算機(jī)軟件、硬件或其任何組合的計(jì)算機(jī)可讀介質(zhì)來實(shí)施。對(duì)于硬件實(shí)施,這里描述的實(shí)施方式可以通過使用特定用途集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理裝置(DSPD)、可編程邏輯裝置(PLD)、現(xiàn)場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設(shè)計(jì)為執(zhí)行這里描述的功能的電子單元中的至少一種來實(shí)施,在一些情況下,這樣的實(shí)施方式可以在控制器180中實(shí)施。對(duì)于軟件實(shí)施,諸如過程或功能的實(shí)施方式可以與允許執(zhí)行至少一種功能或操作的單獨(dú)的軟件模塊來實(shí)施。軟件代碼可以由以任何適當(dāng)?shù)木幊陶Z言編寫的軟件應(yīng)用程序(或程序)來實(shí)施,軟件代碼可以存儲(chǔ)在存儲(chǔ)器160中并且由控制器180執(zhí)行。
至此,己經(jīng)按照其功能描述了移動(dòng)終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動(dòng)型、滑動(dòng)型移動(dòng)終端等等的各種類型的移動(dòng)終端中的滑動(dòng)型移動(dòng)終端作為示例。因此,本發(fā)明能夠應(yīng)用于任何類型的移動(dòng)終端,并且不限于滑動(dòng)型移動(dòng)終端。
現(xiàn)在將參考圖1-2描述相機(jī)的電氣結(jié)構(gòu)框圖。
攝影鏡頭1211由用于形成被攝體像的多個(gè)光學(xué)鏡頭構(gòu)成,為單焦點(diǎn)鏡頭或變焦鏡頭。攝影鏡頭1211在鏡頭驅(qū)動(dòng)器1221的控制下能夠在光軸方向上移動(dòng),鏡頭驅(qū)動(dòng)器1221根據(jù)來自鏡頭驅(qū)動(dòng)控制電路1222的控制信號(hào),控制攝影鏡頭1211的焦點(diǎn)位置,在變焦鏡頭的情況下,也可控制焦點(diǎn)距離。鏡頭驅(qū)動(dòng)控制電路1222按照來自微型計(jì)算機(jī)1217的控制命令進(jìn)行鏡頭驅(qū)動(dòng)器1221的驅(qū)動(dòng)控制。
在攝影鏡頭1211的光軸上、由攝影鏡頭1211形成的被攝體像的位置附近配置有攝像元件1212。攝像元件1212用于對(duì)被攝體像攝像并取得攝像圖像數(shù)據(jù)。在攝像元件1212上二維且呈矩陣狀配置有構(gòu)成各像素的光電二極管。各光電二極管產(chǎn)生與受光量對(duì)應(yīng)的光電轉(zhuǎn)換電流,該光電轉(zhuǎn)換電流由與各光電二極管連接的電容器進(jìn)行電荷蓄積。各像素的前表面配置有拜耳排列的RGB濾色器。
攝像元件1212與攝像電路1213連接,該攝像電路1213在攝像元件1212中進(jìn)行電荷蓄積控制和圖像信號(hào)讀出控制,對(duì)該讀出的圖像信號(hào)(模擬圖像信號(hào))降低重置噪聲后進(jìn)行波形整形,進(jìn)而進(jìn)行增益提高等以成為適當(dāng)?shù)男盘?hào)電平。
攝像電路1213與A/D轉(zhuǎn)換器1214連接,該A/D轉(zhuǎn)換器1214對(duì)模擬圖像信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,向總線1227輸出數(shù)字圖像信號(hào)(以下稱之為圖像數(shù)據(jù))。
總線1227是用于傳送在相機(jī)的內(nèi)部讀出或生成的各種數(shù)據(jù)的傳送路徑。在總線1227連接著上述A/D轉(zhuǎn)換器1214,此外還連接著圖像處理器1215、JPEG處理器1216、微型計(jì)算機(jī)1217、SDRAM(Synchronous Dynamic random access memory,同步動(dòng)態(tài)隨機(jī)存取內(nèi)存)1218、存儲(chǔ)器接口(以下稱之為存儲(chǔ)器I/F)1219、LCD(Liquid Crystal Display,液晶顯示器)驅(qū)動(dòng)器1220。
圖像處理器1215對(duì)基于攝像元件1212的輸出的圖像數(shù)據(jù)進(jìn)行OB相減處理、白平衡調(diào)整、顏色矩陣運(yùn)算、伽馬轉(zhuǎn)換、色差信號(hào)處理、噪聲去除處理、同時(shí)化處理、邊緣處理等各種圖像處理。JPEG處理器1216在將圖像數(shù)據(jù)記錄于記錄介質(zhì)1225時(shí),按照J(rèn)PEG壓縮方式壓縮從SDRAM1218讀出的圖像數(shù)據(jù)。此外,JPEG處理器1216為了進(jìn)行圖像再現(xiàn)顯示而進(jìn)行JPEG圖像數(shù)據(jù)的解壓縮。進(jìn)行解壓縮時(shí),讀出記錄在記錄介質(zhì)1225中的文件,在JPEG處理器1216中實(shí)施了解壓縮處理后,將解壓縮的圖像數(shù)據(jù)暫時(shí)存儲(chǔ)于SDRAM1218中并在LCD1226上進(jìn)行顯示。另外,在本實(shí)施方式中,作為圖像壓縮解壓縮方式采用的是JPEG方式,然而壓縮解壓縮方式不限于此,當(dāng)然可以采用MPEG、TIFF、H.264等其他的壓縮解壓縮方式。
微型計(jì)算機(jī)1217發(fā)揮作為該相機(jī)整體的控制部的功能,統(tǒng)一控制相機(jī)的各種處理序列。微型計(jì)算機(jī)1217連接著操作單元1223和閃存1224。
操作單元1223包括但不限于實(shí)體按鍵或者虛擬按鍵,該實(shí)體或虛擬按鍵可以為電源按鈕、拍照鍵、編輯按鍵、動(dòng)態(tài)圖像按鈕、再現(xiàn)按鈕、菜單按鈕、十字鍵、OK按鈕、刪除按鈕、放大按鈕等各種輸入按鈕和各種輸入鍵等操作控件,檢測這些操作控件的操作狀態(tài)。
將檢測結(jié)果向微型計(jì)算機(jī)1217輸出。此外,在作為顯示器的LCD1226的前表面設(shè)有觸摸面板,檢測用戶的觸摸位置,將該觸摸位置向微型計(jì)算機(jī)1217輸出。微型計(jì)算機(jī)1217根據(jù)來自操作單元1223的操作位置的檢測結(jié)果,執(zhí)行與用戶的操作對(duì)應(yīng)的各種處理序列。
閃存1224存儲(chǔ)用于執(zhí)行微型計(jì)算機(jī)1217的各種處理序列的程序。微型計(jì)算機(jī)1217根據(jù)該程序進(jìn)行相機(jī)整體的控制。此外,閃存1224存儲(chǔ)相機(jī)的各種調(diào)整值,微型計(jì)算機(jī)1217讀出調(diào)整值,按照該調(diào)整值進(jìn)行相機(jī)的控制。
SDRAM1218是用于對(duì)圖像數(shù)據(jù)等進(jìn)行暫時(shí)存儲(chǔ)的可電改寫的易失性存儲(chǔ)器。該SDRAM1218暫時(shí)存儲(chǔ)從A/D轉(zhuǎn)換器1214輸出的圖像數(shù)據(jù)和在圖像處理器1215、JPEG處理器1216等中進(jìn)行了處理后的圖像數(shù)據(jù)。
存儲(chǔ)器接口1219與記錄介質(zhì)1225連接,進(jìn)行將圖像數(shù)據(jù)和附加在圖像數(shù)據(jù)中的文件頭等數(shù)據(jù)寫入記錄介質(zhì)1225和從記錄介質(zhì)1225中讀出的控制。記錄介質(zhì)1225例如為能夠在相機(jī)主體上自由拆裝的存儲(chǔ)器卡等記錄介質(zhì),然而不限于此,也可以是內(nèi)置在相機(jī)主體中的硬盤等。
LCD驅(qū)動(dòng)器1210與LCD1226連接,將由圖像處理器1215處理后的圖像數(shù)據(jù)存儲(chǔ)于SDRAM1218,需要顯示時(shí),讀取SDRAM1218存儲(chǔ)的圖像數(shù)據(jù)并在LCD1226上顯示,或者,JPEG處理器1216壓縮過的圖像數(shù)據(jù)存儲(chǔ)于SDRAM1218,在需要顯示時(shí),JPEG處理器1216讀取SDRAM1218的壓縮過的圖像數(shù)據(jù),再進(jìn)行解壓縮,將解壓縮后的圖像數(shù)據(jù)通過LCD1226進(jìn)行顯示。
LCD1226配置在相機(jī)主體的背面進(jìn)行圖像顯示。該LCD1226LCD,然而不限于此,也可以采用有機(jī)EL等各種顯示面板(LCD1226),然而不限于此,也可以采用有機(jī)EL等各種顯示面板。
圖1-2所示的相機(jī)可在錄制模塊1830的控制下完成視頻的錄制獲取到相應(yīng)的視頻數(shù)據(jù),并在存儲(chǔ)控制模塊1820的控制下按照一定的規(guī)則存儲(chǔ)到存儲(chǔ)器中的數(shù)據(jù)緩存隊(duì)列中。為了便于理解,下面基于上述移動(dòng)終端硬件結(jié)構(gòu)以及相機(jī)的電氣結(jié)構(gòu)示意圖,提出本發(fā)明各個(gè)實(shí)施例。
第一實(shí)施例
本實(shí)施例提供一種相機(jī)文件管理方法,其可用于在用戶的日常生活中,對(duì)相機(jī)文件進(jìn)行掃描;并在掃描到某一相機(jī)文件不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),為未激活狀態(tài)的文件記錄在所述相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示。這樣當(dāng)相機(jī)文件發(fā)生改變導(dǎo)致原相機(jī)文件不存在后,對(duì)應(yīng)的文件記錄由于動(dòng)態(tài)更新為未激活狀態(tài),從而在相機(jī)應(yīng)用的用戶交互顯示界面不再顯示,可以避免對(duì)不存在的文件進(jìn)行查看、編輯或者播放等。同時(shí),在該不存在的相機(jī)文件又在系統(tǒng)中恢復(fù)(例如移除的SD卡又插入)后,由于其對(duì)應(yīng)的文件記錄并未刪除,因此在媒體數(shù)據(jù)庫中的文件記錄可對(duì)應(yīng)找回,只需要將其狀態(tài)修改為激活狀態(tài)即可,因此可以保證相機(jī)文件的正常、快速的恢復(fù),可進(jìn)一步提升用戶體驗(yàn)。
應(yīng)當(dāng)理解的是,本實(shí)施例中,相機(jī)文件不存在是指相機(jī)文件存在過,在媒體數(shù)據(jù)庫中有其對(duì)應(yīng)的文件記錄,但在掃描時(shí)該相機(jī)文件已經(jīng)不存在,可以是被刪除或被暫時(shí)移除。例如,在外部存儲(chǔ)設(shè)備(例如SD卡、移動(dòng)硬盤、U盤等)中存有相機(jī)文件A,移出該外部存儲(chǔ)設(shè)備卡,此時(shí)掃描,相機(jī)文件A就不存在,將媒體數(shù)據(jù)庫中相機(jī)文件A的文件記錄設(shè)置為未激活狀態(tài)。相機(jī)文件不存在包括永久被刪除和暫時(shí)被移除但可能會(huì)恢復(fù)兩種情況。
本實(shí)施例中,相機(jī)文件管理方法可參見圖2所示,包括:
S201:對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描。
應(yīng)當(dāng)理解的是,本實(shí)施例中相機(jī)文件存儲(chǔ)的位置可以是在系統(tǒng)指定的文件夾內(nèi),也可以是系統(tǒng)的任意位置,包括系統(tǒng)自身的存儲(chǔ)區(qū)域以及外設(shè)存儲(chǔ)設(shè)備區(qū)域。對(duì)應(yīng)的,對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描時(shí),可以對(duì)指定的存儲(chǔ)位置或區(qū)域進(jìn)行掃描,也可以對(duì)所有的存儲(chǔ)區(qū)域進(jìn)行掃描。
另外,本實(shí)施例中掃描的具體觸發(fā)機(jī)制或規(guī)則可以根據(jù)實(shí)際需求靈活設(shè)定。
S202:掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài)。
本實(shí)施例中,設(shè)置為未激活狀態(tài)的文件記錄在相機(jī)應(yīng)用的用戶交互顯示界面不再進(jìn)行顯示。應(yīng)當(dāng)理解的是,用戶交互顯示界面可以刷新,通過刷新在用戶交互顯示界面只顯示處于激活狀態(tài)的文件記錄,隱藏為未激活狀態(tài)的文件記錄。
本實(shí)施例中,為未激活狀態(tài)的文件記錄仍會(huì)進(jìn)行存儲(chǔ)而不會(huì)被隨意丟棄,當(dāng)在滿足激活條件后還可被重新激活進(jìn)而實(shí)現(xiàn)相機(jī)文件的恢復(fù)。
如上所述,本實(shí)施例中,相機(jī)應(yīng)用可以對(duì)應(yīng)一個(gè)相機(jī)文件夾,也可以對(duì)應(yīng)多個(gè)相機(jī)文件夾。
應(yīng)當(dāng)理解的是,本實(shí)施例中,用戶交互顯示界面包含但不限于:文件列表顯示界面和文件編輯顯示界面。當(dāng)判定某相機(jī)文件不存在時(shí),該相機(jī)文件的文件記錄不會(huì)在文件列表顯示界面和文件編輯顯示界面等用戶交互顯示界面進(jìn)行顯示。
本實(shí)施例中,對(duì)相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描的方式至少包括全面掃描和定點(diǎn)掃描中的至少一種。
通過全面掃描方式對(duì)相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描的過程參見圖3,包括:
S301:判定預(yù)設(shè)掃描條件是否觸發(fā);若是,轉(zhuǎn)至S302;否則,轉(zhuǎn)至S306。
S302:獲取系統(tǒng)中當(dāng)前各相機(jī)文件夾下當(dāng)前各相機(jī)文件的相機(jī)文件屬性信息。
S303:獲取媒體數(shù)據(jù)庫中當(dāng)前的各文件記錄中的文件屬性記錄信息;該步驟與S302可以同時(shí)執(zhí)行,也可以先執(zhí)行該步驟,再執(zhí)行S302,具體此處不做限定。
S304:將獲取的相機(jī)文件屬性信息與各文件屬性記錄信息進(jìn)行匹配。
S305:根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
S306:返回步驟S301進(jìn)行下一次判定。
值得注意的是,本實(shí)施例中,只有在預(yù)設(shè)掃描條件被觸發(fā)時(shí),才通過全面掃描方式對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描。該掃描會(huì)對(duì)系統(tǒng)內(nèi)的所有相機(jī)文件進(jìn)行掃描。
本實(shí)施例中,示例的預(yù)設(shè)掃描條件至少包括相機(jī)應(yīng)用啟動(dòng)或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面、外部存儲(chǔ)設(shè)備移除或插入、接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知中的至少一種。即包括以下三種情況中的至少一種:
當(dāng)相機(jī)應(yīng)用啟動(dòng)或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面時(shí),例如,進(jìn)入相機(jī)應(yīng)用時(shí)、或者返回至文件列表顯示界面時(shí),對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
當(dāng)外部存儲(chǔ)設(shè)備移除或插入時(shí),例如,當(dāng)發(fā)生SD卡移除或插入時(shí),對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。應(yīng)當(dāng)理解的是,本實(shí)施例中的外部存儲(chǔ)設(shè)備是指具有存儲(chǔ)空間,可將其存儲(chǔ)空間與接入終端作為擴(kuò)展存儲(chǔ)空間的外部存儲(chǔ)設(shè)備,除前述SD卡外,還可以是U盤,移動(dòng)硬盤等外部存儲(chǔ)設(shè)備。
當(dāng)接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知時(shí),例如,注冊(cè)監(jiān)聽廣播,當(dāng)相機(jī)應(yīng)用收到此類廣播時(shí),對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。應(yīng)當(dāng)理解的是,此時(shí)相機(jī)文件夾內(nèi)容更新通知是通知對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
通過定點(diǎn)掃描方式對(duì)相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描的過程參見圖4,包括:
S401:判斷是否接收到第三方應(yīng)用發(fā)送的某一相機(jī)文件的更新通知;若是,轉(zhuǎn)至S402;否則,轉(zhuǎn)至S406。
S402:獲取該相機(jī)文件的相機(jī)文件屬性信息。
S403:獲取媒體數(shù)據(jù)庫中該相機(jī)文件的文件屬性記錄信息,該步驟與S402可以同時(shí)執(zhí)行,也可以先執(zhí)行該步驟,再執(zhí)行S402,具體此處不做限定。
S404:將獲取的相機(jī)文件屬性信息與文件屬性記錄信息進(jìn)行匹配。
S405:根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
S406:返回步驟S401進(jìn)行下一次判定。
值得注意的是,本實(shí)施例中,只有在接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾下某一相機(jī)文件的更新通知時(shí),才會(huì)通過定點(diǎn)掃描的方式對(duì)相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描。該掃描僅針對(duì)第三方應(yīng)用發(fā)送更新通知的相機(jī)文件夾下的某一相機(jī)文件進(jìn)行掃描。
例如,注冊(cè)監(jiān)聽廣播,當(dāng)相機(jī)應(yīng)用之相機(jī)文件夾下某一相機(jī)文件發(fā)生變化時(shí),會(huì)收到告知該相機(jī)文件已被更新的廣播,然后獲取該相機(jī)文件的相機(jī)文件屬性信息和文件屬性記錄信息并進(jìn)行匹配,從而確定相機(jī)文件的更新情況。
應(yīng)當(dāng)理解的是,接收到的第三方應(yīng)用發(fā)送的相機(jī)文件夾之某一相機(jī)文件的更新通知,可以僅是告知相機(jī)應(yīng)用該相機(jī)文件已被更新,可以進(jìn)行定點(diǎn)掃描;也可以是包含該相機(jī)文件更新前的文件屬性信息和該相機(jī)文件當(dāng)前的文件屬性信息的通知。
例如,第三方應(yīng)用發(fā)送的更新通知僅告知了相機(jī)文件夾下相機(jī)文件A已被更新,此后需獲取該相機(jī)文件的相機(jī)文件屬性信息,同時(shí)在媒體數(shù)據(jù)庫中獲取該相機(jī)文件的文件屬性記錄信息,再進(jìn)行匹配并確定更新結(jié)果。
又例如,第三方應(yīng)用發(fā)送的更新通知中,告知了相機(jī)文件夾下相機(jī)文件A更新前的文件屬性信息和當(dāng)前的文件屬性信息,則相機(jī)應(yīng)用可以直接根據(jù)當(dāng)前的文件屬性信息與獲取到的媒體數(shù)據(jù)庫中相機(jī)文件A的文件屬性記錄信息進(jìn)行匹配并確定更新結(jié)果。
本實(shí)施例中,文件屬性記錄信息可以直接通過獲取整個(gè)文件記錄的方式獲取,也可以僅提取用于與相機(jī)文件屬性信息進(jìn)行匹配的部分的信息。
本實(shí)施例中,相機(jī)文件屬性信息和文件屬性記錄信息包括的內(nèi)容只要滿足能對(duì)各相機(jī)文件進(jìn)行唯一識(shí)別,又能體現(xiàn)各相機(jī)文件的更新過程的內(nèi)容即可。例如可以包括文件名稱、存儲(chǔ)路徑、文件尺寸、文件最后修改時(shí)間、文件制造商等中的至少一種。本實(shí)施例中通過掃描確認(rèn)的結(jié)果除了某一相機(jī)文件不存在外,還可以包括但不限于新增相機(jī)文件,對(duì)相機(jī)文件進(jìn)行編輯(包括但不限于名稱、存儲(chǔ)路徑編輯、修改時(shí)間)、替換文件、恢復(fù)文件等。
本實(shí)施例中,在進(jìn)行全面掃描時(shí),還包括對(duì)當(dāng)前所掃描的文件是否是相機(jī)文件進(jìn)行判斷,從而篩選出所有的相機(jī)文件。該篩選過程參見圖5所示,包括:
S501:獲取當(dāng)前待掃描的文件。
S502:判斷該文件后綴是否為相機(jī)文件格式,例如包括但不限于jpg/mp3/mp4/ram;若是,轉(zhuǎn)至S503;否則,轉(zhuǎn)至S505。
S503:解析文件頭信息。
S504:判斷是否包含預(yù)設(shè)制造商信息,例如nubia;若是,轉(zhuǎn)至S505;否則,轉(zhuǎn)至S506。
S505:確定該文件為相機(jī)文件。
S506:判斷文件是否掃描完畢,如否,轉(zhuǎn)至S501;否則,結(jié)束。
應(yīng)當(dāng)理解的是,上述篩選過程僅僅是一種示例過程,具體的篩選方法并不限于上述示例。
應(yīng)當(dāng)理解的是,相機(jī)應(yīng)用之相機(jī)文件夾下的相機(jī)文件可以是對(duì)相機(jī)文件夾下的文件進(jìn)行一次篩選后的相機(jī)文件,可直接進(jìn)行掃描;也可以是未篩選的,在掃描前先進(jìn)行篩選。
本實(shí)施例中,為了提升資源利用率以及管理的高效和合理性,對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描完(至少掃描一次)之后,還可以對(duì)狀態(tài)為未激活狀態(tài)的文件記錄進(jìn)行動(dòng)態(tài)管理,例如,一種示例的管理過程參見圖6,包括:
S601:獲取媒體數(shù)據(jù)庫中的文件記錄;
S602:判定獲取的文件記錄是否為未激活狀態(tài);若是,轉(zhuǎn)至S603;否則,轉(zhuǎn)至S605;
S603:判定獲取的文件記錄是否滿足失效條件;若是,轉(zhuǎn)至S604;否則,轉(zhuǎn)至S605;
S604:將獲取的文件記錄作為失效文件記錄并進(jìn)行刪除。
S605:在媒體數(shù)據(jù)庫中繼續(xù)保持該文件記錄。
本實(shí)施例中,失效條件包括未使用時(shí)間超過預(yù)設(shè)時(shí)間值和使用頻率小于預(yù)設(shè)使用頻率中的至少一種。則其中預(yù)設(shè)使用頻率可以為:某一文件記錄被使用過的次數(shù)/所有文件記錄被使用過的總次數(shù);或該文件記錄每天被使用的次數(shù)等。即失效條件至少包括下述三例的情況:
例如,假設(shè)預(yù)設(shè)時(shí)間值為30天,文件記錄1已經(jīng)31天未使用了,則判定文件記錄1滿足失效條件,若文件記錄1為未激活狀態(tài),則文件記錄1為失效文件記錄,文件記錄1被刪除。
例如,假設(shè)預(yù)設(shè)使用頻率為0.1(某一文件記錄被使用過的次數(shù)/所有文件記錄被使用過的總次數(shù)),文件記錄1使用頻率為0.09,則判定文件記錄1滿足失效條件,若文件記錄1為未激活狀態(tài),則文件記錄1為失效文件記錄,文件記錄1被刪除。
又例如,假設(shè)預(yù)設(shè)時(shí)間值為6個(gè)月,預(yù)設(shè)使用頻率為0.1,文件記錄1超過6個(gè)月未使用,且同時(shí)文件記錄1使用頻率低于0.1,則判定文件記錄1滿足失效條件,若文件記錄1為未激活狀態(tài),則文件記錄1為失效文件記錄,文件記錄1被刪除。
本實(shí)施例提供的相機(jī)文件管理方法各操作步驟具體可通過構(gòu)建于如圖1所示的終端內(nèi)的控制器180實(shí)現(xiàn)。
本實(shí)施例提供的相機(jī)文件管理方法,通過對(duì)終端系統(tǒng)中的相機(jī)文件進(jìn)行掃描,當(dāng)掃描到相機(jī)文件夾下某一相機(jī)文件不存在時(shí),將相機(jī)應(yīng)用的媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),且被設(shè)置為未激活狀態(tài)的文件記錄,在相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示。這樣,當(dāng)相機(jī)文件狀態(tài)更新后,該相機(jī)文件狀態(tài)更新前在媒體數(shù)據(jù)庫中的文件記錄并未被刪除,在狀態(tài)更新的相機(jī)文件恢復(fù)后,該相機(jī)文件在媒體數(shù)據(jù)庫中的文件記錄可對(duì)應(yīng)找回,且可確保照片文件信息(包括但不限于分類TAG、收藏、設(shè)置為標(biāo)題等)的一致性和完整性;同時(shí),未激活狀態(tài)的文件記錄在相機(jī)應(yīng)用的用戶交互顯示界面不顯示可以避免播放和編輯不存在的文件,提高了用戶體驗(yàn)的滿意度。
第二實(shí)施例
為了更好的理解本發(fā)明,本實(shí)施例在第一實(shí)施例的基礎(chǔ)上,以相機(jī)文件屬性信息和文件屬性記錄信息均包括文件名稱、存儲(chǔ)路徑、文件尺寸以及文件最后修改時(shí)間(還可進(jìn)一步包括文件制造商)為例,對(duì)本發(fā)明的相機(jī)文件管理方法具體過程做進(jìn)一步示例說明。
本實(shí)施例中,將獲取的相機(jī)文件屬性信息與文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況包括以下至少一種:
當(dāng)某一相機(jī)文件屬性信息中的文件存儲(chǔ)路徑和文件最后修改時(shí)間與各文件屬性記錄信息中的存儲(chǔ)路徑和最后修改時(shí)間都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為新增文件;
例如:新增一個(gè)相機(jī)文件:通過第三方入口在照片文件夾下新增一個(gè)相機(jī)文件,將此相機(jī)文件的存儲(chǔ)路徑、文件最后修改時(shí)間與媒體數(shù)據(jù)庫中文件記錄進(jìn)行匹配,發(fā)現(xiàn)找不到匹配的存儲(chǔ)路徑以及文件最后修改時(shí)間的文件記錄,此時(shí)判定該相機(jī)文件為新增的文件;對(duì)于新增的相機(jī)文件,還包括提取該新增文件的文件記錄加入媒體數(shù)據(jù)庫中。
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與所述某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,但該文件屬性記錄信息對(duì)應(yīng)的文件記錄為未激活狀態(tài)時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為恢復(fù)文件;
例如:外部存儲(chǔ)設(shè)備,例如SD卡移入:由于之前并沒有對(duì)媒體數(shù)據(jù)庫中的相應(yīng)文件記錄進(jìn)行刪除,對(duì)于移入的相機(jī)文件,其相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與之前原來的文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,也即仍然可以找到匹配的文件記錄,對(duì)重新出現(xiàn)的相機(jī)文件判斷為恢復(fù)文件,此時(shí)還包括將該恢復(fù)的相機(jī)文件對(duì)應(yīng)的文件記錄由未激活狀態(tài)修改為激活狀態(tài)。
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件尺寸匹配,但二者包含的文件存儲(chǔ)路徑不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件存儲(chǔ)路徑被修改;
例如:相機(jī)文件的存儲(chǔ)路徑path改變:
此時(shí)相機(jī)文件仍存在,但存儲(chǔ)path改變,無法與媒體數(shù)據(jù)庫中已有文件記錄相匹配。將文件屬性信息中的文件名稱與媒體數(shù)據(jù)庫中所有文件記錄的進(jìn)行匹配,可以找到一條文件名稱匹配、文件尺寸匹配的文件記錄,此時(shí)判斷該相機(jī)文件的存儲(chǔ)路徑被修改,進(jìn)一步更新媒體數(shù)據(jù)庫,將匹配的文件記錄的path信息更改為現(xiàn)有該相機(jī)文件的存儲(chǔ)路徑信息,其他信息保持不變。
當(dāng)某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸匹配,但二者包含的最后修改時(shí)間不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件最后修改時(shí)間被修改;
例如:修改某個(gè)相機(jī)文件,如對(duì)文件進(jìn)行編輯,使文件的修改時(shí)間發(fā)生改變,但存儲(chǔ)路徑與文件名稱等并沒有改變:此種情況,更新數(shù)據(jù)庫中相應(yīng)記錄,將此相機(jī)文件的文件記錄的最近修改時(shí)間更新為此文件修改時(shí)間,其他信息維持不變。
當(dāng)某一相機(jī)文件屬性信息中的存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的存儲(chǔ)路徑、文件尺寸匹配,但二者包含的文件名稱不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件名稱被修改;若該相機(jī)文件屬性信息中的存儲(chǔ)路徑與某一文件屬性記錄信息中的存儲(chǔ)路徑,但二者包含的文件名稱以及文件尺寸不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為替換文件;
例如,刪除相機(jī)文件夾下的某個(gè)相機(jī)文件后,拷貝入一個(gè)新文件,并命名為原有的相機(jī)文件名:此時(shí)該相機(jī)文件的存儲(chǔ)路徑信息與原文件記錄是匹配的,進(jìn)一步比較尺寸信息(例如相機(jī)文件為照片時(shí),尺寸信息可以是寬度和高度信息等,相機(jī)文件為視頻時(shí),尺寸信息可以是視頻大小或者時(shí)長),一般情況下,新相機(jī)文件的寬度和高度與媒體數(shù)據(jù)庫中記錄的寬度和高度不相等,可將此相機(jī)文件相關(guān)信息作為新文件紀(jì)錄,插入到數(shù)據(jù)庫中,并將原文件記錄(也即在相同path信息的記錄)刪除。
當(dāng)某一文件屬性記錄信息與各相機(jī)文件屬性信息都不匹配且不屬于上述任一情況時(shí),確定該文件屬性記錄信息對(duì)應(yīng)的相機(jī)文件不存在;
應(yīng)當(dāng)理解的是,本實(shí)施例中相機(jī)文件不存在包括永久被刪除或暫時(shí)被移除兩種情況,例如:
A.刪除相機(jī)文件:通過第三方應(yīng)用(如文件管理器)刪除某個(gè)相機(jī)文件后,由于文件已不存在,遍歷磁盤中照片文件夾下的所有相機(jī)文件時(shí),會(huì)發(fā)現(xiàn)媒體數(shù)據(jù)庫中存在與各相機(jī)文件屬性信息都不匹配的文件記錄,且也都不屬于上述情況,對(duì)于這種情況,更新數(shù)據(jù)庫中該條文件記錄,設(shè)置其為未激活狀態(tài)。
B.SD卡移除:部分相機(jī)文件暫時(shí)丟失,類似于刪除,由于發(fā)現(xiàn)媒體數(shù)據(jù)庫中存在與各相機(jī)文件屬性信息都不匹配的文件記錄,且也都不屬于上述情況,對(duì)于這種情況,更新數(shù)據(jù)庫中該條文件記錄,設(shè)置其為未激活狀態(tài)。
本實(shí)施例提供的相機(jī)文件管理方法各操作步驟具體可通過構(gòu)建于如圖1所示的終端內(nèi)的控制器實(shí)現(xiàn)。
本實(shí)施例提供的相機(jī)文件管理方法,依照相機(jī)文件屬性信息與文件屬性記錄信息中存儲(chǔ)路徑能和文件時(shí)長的不同匹配情況,分別進(jìn)行了示例說明。具體分析了處于不同更新情況下的相機(jī)文件的操作處理方法,實(shí)現(xiàn)了相機(jī)文件刪除、恢復(fù)、修改后媒體數(shù)據(jù)庫中的對(duì)應(yīng)文件記錄的關(guān)鍵信息的恢復(fù)及保留,且可確保照片文件信息(包括但不限于分類TAG、收藏、設(shè)置為標(biāo)題等)的一致性和完整性,提高了用戶體驗(yàn)的滿意度。
第三實(shí)施例
參照?qǐng)D7,圖7為本發(fā)明第三實(shí)施例提供的一種終端結(jié)構(gòu)示意圖,包括終端7,包括:
文件掃描模塊71,用于對(duì)系統(tǒng)中的相機(jī)文件進(jìn)行掃描。應(yīng)當(dāng)理解的是,本實(shí)施例中相機(jī)文件存儲(chǔ)的位置可以是在系統(tǒng)指定的文件夾內(nèi),也可以是系統(tǒng)的任意位置,包括系統(tǒng)自身的存儲(chǔ)區(qū)域以及外設(shè)存儲(chǔ)設(shè)備區(qū)域。
處理模塊72,用于在文件掃描模塊71掃描到某一相機(jī)文件當(dāng)前不存在時(shí),將相機(jī)應(yīng)用之媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài)。本實(shí)施例中,為未激活狀態(tài)的文件記錄在相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示。應(yīng)當(dāng)理解的是,用戶交互顯示界面可以刷新,通過刷新在用戶交互顯示界面只顯示處于激活狀態(tài)的文件記錄,隱藏為未激活狀態(tài)的文件記錄。
應(yīng)當(dāng)理解的是,本實(shí)施例中,相機(jī)應(yīng)用可以對(duì)應(yīng)一個(gè)相機(jī)文件夾,也可以對(duì)應(yīng)多個(gè)相機(jī)文件夾。例如,相機(jī)應(yīng)用只對(duì)應(yīng)一個(gè)相機(jī)文件夾,文件掃描模塊71在掃描時(shí),僅針對(duì)該相機(jī)文件夾下的相機(jī)文件進(jìn)行,不會(huì)對(duì)該相機(jī)文件夾之外的其余文件夾進(jìn)行掃描。
又例如,相機(jī)應(yīng)用對(duì)應(yīng)兩個(gè)相機(jī)文件夾,其中一個(gè)相機(jī)文件夾設(shè)置于終端的存儲(chǔ)器中,另一個(gè)設(shè)置于SD卡中,掃描時(shí),文件掃描模塊71會(huì)針對(duì)前述兩相機(jī)文件夾下的相機(jī)文件進(jìn)行,當(dāng)其中任意一個(gè)相機(jī)文件夾下的相機(jī)文件發(fā)生變化時(shí),文件掃描模塊71都能夠掃描到對(duì)應(yīng)的相機(jī)文件是否存在。應(yīng)當(dāng)理解的是,本例中,終端的存儲(chǔ)器或SD卡中相機(jī)文件夾并非只能設(shè)置一個(gè),也可以設(shè)置多個(gè)。
應(yīng)當(dāng)理解的是,本實(shí)施例中,用戶交互顯示界面包含但不限于:文件列表顯示界面和文件編輯顯示界面。
本實(shí)施例中,文件掃描模塊71對(duì)相機(jī)應(yīng)用之相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描包括:在預(yù)設(shè)掃描條件觸發(fā)時(shí),獲取相機(jī)文件夾下當(dāng)前各相機(jī)文件的相機(jī)文件屬性信息,并獲取媒體數(shù)據(jù)庫中當(dāng)前的各文件記錄中的文件屬性記錄信息;將獲取的相機(jī)文件屬性信息與各文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況;
或,在接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾之某一相機(jī)文件更新通知時(shí),獲取該相機(jī)文件的相機(jī)文件屬性信息,并獲取媒體數(shù)據(jù)庫中該相機(jī)文件的文件屬性記錄信息;將獲取的相機(jī)文件屬性信息與文件屬性記錄信息進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
值得注意的是,本實(shí)施例中,文件掃描模塊71在預(yù)設(shè)掃描條件觸發(fā)時(shí)對(duì)相機(jī)應(yīng)用之相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描,會(huì)對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
應(yīng)當(dāng)理解的是,本實(shí)施例中,預(yù)設(shè)掃描條件至少包括相機(jī)應(yīng)用啟動(dòng)或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面、外部存儲(chǔ)設(shè)備移除或插入、接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知三種中的一種。具體的:
當(dāng)文件掃描模塊71檢測到相機(jī)應(yīng)用啟動(dòng)或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面時(shí),例如,進(jìn)入相機(jī)應(yīng)用時(shí)、或者返回至文件列表顯示界面時(shí),對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
當(dāng)文件掃描模塊71檢測到外部存儲(chǔ)設(shè)備移除或插入時(shí),例如,當(dāng)發(fā)生SD卡移除或插入時(shí),對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
當(dāng)接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知時(shí),例如,注冊(cè)監(jiān)聽廣播,當(dāng)相機(jī)應(yīng)用收到此類廣播時(shí),文件掃描模塊71對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。應(yīng)當(dāng)理解的是,此時(shí)相機(jī)文件夾內(nèi)容更新通知是通知文件掃描模塊71對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
值得注意的是,本實(shí)施例中,文件掃描模塊71在接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾之某一相機(jī)文件更新通知時(shí)對(duì)相機(jī)應(yīng)用之相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描,是僅針對(duì)第三方應(yīng)用發(fā)送更新通知的相機(jī)文件夾下的某一相機(jī)文件進(jìn)行掃描。
例如,注冊(cè)監(jiān)聽廣播,當(dāng)相機(jī)應(yīng)用之相機(jī)文件夾下某一相機(jī)文件發(fā)生變化時(shí),文件掃描模塊71會(huì)收到告知該相機(jī)文件已被更新的廣播,然后獲取該相機(jī)文件的相機(jī)文件屬性信息和文件屬性記錄信息并進(jìn)行匹配,從而確定相機(jī)文件的更新情況。
應(yīng)當(dāng)理解的是,接收到的第三方應(yīng)用發(fā)送的相機(jī)文件夾之某一相機(jī)文件的更新通知,可以僅是告知該相機(jī)文件已被更新,可以對(duì)該相機(jī)文件進(jìn)行掃描;也可以是包含該相機(jī)文件更新前的文件屬性信息和該相機(jī)文件當(dāng)前的文件屬性信息的通知。
本實(shí)施例中,文件掃描模塊71可以直接通過獲取整個(gè)文件記錄的方式獲取文件屬性記錄信息,也可以僅提取用于與相機(jī)文件屬性信息進(jìn)行匹配的部分的信息。
本實(shí)施例中,相機(jī)文件屬性信息和文件屬性記錄信息包括的內(nèi)容只要滿足能對(duì)各相機(jī)文件進(jìn)行唯一識(shí)別,又能體現(xiàn)各相機(jī)文件的更新過程的內(nèi)容即可。例如可以包括文件名稱、存儲(chǔ)路徑、文件尺寸、文件最后修改時(shí)間、文件制造商等中的至少一種。本實(shí)施例中通過掃描確認(rèn)的結(jié)果除了某一相機(jī)文件不存在外,還可以包括但不限于新增相機(jī)文件,對(duì)相機(jī)文件進(jìn)行編輯(包括但不限于名稱、存儲(chǔ)路徑編輯、修改時(shí)間)、替換文件、恢復(fù)文件等。文件掃描模塊71掃描確定相機(jī)文件的更新情況包括但不限于以下情況中的至少一種:
文件掃描模塊71判斷某一相機(jī)文件屬性信息中的文件存儲(chǔ)路徑和文件最后修改時(shí)間與各文件屬性記錄信息中的存儲(chǔ)路徑和最后修改時(shí)間都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為新增文件;
例如:新增一個(gè)相機(jī)文件:通過第三方入口在照片文件夾下新增一個(gè)相機(jī)文件,將此相機(jī)文件的存儲(chǔ)路徑、文件最后修改時(shí)間與媒體數(shù)據(jù)庫中文件記錄進(jìn)行匹配,發(fā)現(xiàn)找不到匹配的存儲(chǔ)路徑以及文件最后修改時(shí)間的文件記錄,此時(shí)判定該相機(jī)文件為新增的文件;處理模塊72還用于對(duì)于新增的相機(jī)文件,提取該新增文件的文件記錄加入媒體數(shù)據(jù)庫中。
文件掃描模塊71判斷某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與所述某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,但該文件屬性記錄信息對(duì)應(yīng)的文件記錄為未激活狀態(tài)時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為恢復(fù)文件;
例如:外部存儲(chǔ)設(shè)備,例如SD卡移入:由于之前并沒有對(duì)媒體數(shù)據(jù)庫中的相應(yīng)文件記錄進(jìn)行刪除,對(duì)于移入的相機(jī)文件,其相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間與之前原來的文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸、以及文件最后修改時(shí)間都匹配,也即仍然可以找到匹配的文件記錄,對(duì)重新出現(xiàn)的相機(jī)文件判斷為恢復(fù)文件,此時(shí)處理模塊72還用于將該恢復(fù)的相機(jī)文件對(duì)應(yīng)的文件記錄由未激活狀態(tài)修改為激活狀態(tài)。
文件掃描模塊71判斷某一相機(jī)文件屬性信息中的文件名稱、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件尺寸匹配,但二者包含的文件存儲(chǔ)路徑不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件存儲(chǔ)路徑被修改;
例如:相機(jī)文件的存儲(chǔ)路徑path改變:
此時(shí)相機(jī)文件仍存在,但存儲(chǔ)path改變,無法與媒體數(shù)據(jù)庫中已有文件記錄相匹配。將文件屬性信息中的文件名稱與媒體數(shù)據(jù)庫中所有文件記錄的進(jìn)行匹配,可以找到一條文件名稱匹配、文件尺寸匹配的文件記錄,此時(shí)判斷該相機(jī)文件的存儲(chǔ)路徑被修改,此時(shí)處理模塊72還用于進(jìn)一步更新媒體數(shù)據(jù)庫,將匹配的文件記錄的path信息更改為現(xiàn)有該相機(jī)文件的存儲(chǔ)路徑信息,其他信息保持不變。
文件掃描模塊71判斷某一相機(jī)文件屬性信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的文件名稱、文件存儲(chǔ)路徑、文件尺寸匹配,但二者包含的最后修改時(shí)間不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件最后修改時(shí)間被修改;
例如:修改某個(gè)相機(jī)文件,如對(duì)文件進(jìn)行編輯,使文件的修改時(shí)間發(fā)生改變,但存儲(chǔ)路徑與文件名稱等并沒有改變:此種情況,處理模塊72還用于更新數(shù)據(jù)庫中相應(yīng)記錄,將此相機(jī)文件的文件記錄的最近修改時(shí)間更新為此文件修改時(shí)間,其他信息維持不變。
文件掃描模塊71判斷某一相機(jī)文件屬性信息中的存儲(chǔ)路徑、文件尺寸與某一文件屬性記錄信息中的存儲(chǔ)路徑、文件尺寸匹配,但二者包含的文件名稱不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件名稱被修改;若該相機(jī)文件屬性信息中的存儲(chǔ)路徑與某一文件屬性記錄信息中的存儲(chǔ)路徑,但二者包含的文件名稱以及文件尺寸不匹配且該相機(jī)文件屬性信息與其他各文件屬性記錄信息都不匹配時(shí),確定該相機(jī)文件屬性信息對(duì)應(yīng)的相機(jī)文件為替換文件;
例如,刪除相機(jī)文件夾下的某個(gè)相機(jī)文件后,拷貝入一個(gè)新文件,并命名為原有的相機(jī)文件名:此時(shí)該相機(jī)文件的存儲(chǔ)路徑信息與原文件記錄是匹配的,進(jìn)一步比較尺寸信息(例如相機(jī)文件為照片時(shí),尺寸信息可以是寬度和高度信息等,相機(jī)文件為視頻時(shí),尺寸信息可以是視頻大小或者時(shí)長),一般情況下,新相機(jī)文件的寬度和高度與媒體數(shù)據(jù)庫中記錄的寬度和高度不相等,此時(shí)處理模塊72還用于將此相機(jī)文件相關(guān)信息作為新文件紀(jì)錄,插入到數(shù)據(jù)庫中,并將原文件記錄(也即在相同path信息的記錄)刪除。
文件掃描模塊71判斷某一文件屬性記錄信息與各相機(jī)文件屬性信息都不匹配且不屬于上述任一情況時(shí),確定該文件屬性記錄信息對(duì)應(yīng)的相機(jī)文件不存在;
應(yīng)當(dāng)理解的是,本實(shí)施例中相機(jī)文件不存在包括永久被刪除或暫時(shí)被移除兩種情況,例如:
A.刪除相機(jī)文件:通過第三方應(yīng)用(如文件管理器)刪除某個(gè)相機(jī)文件后,由于文件已不存在,遍歷磁盤中照片文件夾下的所有相機(jī)文件時(shí),會(huì)發(fā)現(xiàn)媒體數(shù)據(jù)庫中存在與各相機(jī)文件屬性信息都不匹配的文件記錄,且也都不屬于上述情況,對(duì)于這種情況,更新數(shù)據(jù)庫中該條文件記錄,設(shè)置其為未激活狀態(tài)。
B.SD卡移除:部分相機(jī)文件暫時(shí)丟失,類似于刪除,由于發(fā)現(xiàn)媒體數(shù)據(jù)庫中存在與各相機(jī)文件屬性信息都不匹配的文件記錄,且也都不屬于上述情況,對(duì)于這種情況,更新數(shù)據(jù)庫中該條文件記錄,設(shè)置其為未激活狀態(tài)。
本實(shí)施例中,在進(jìn)行全面掃描時(shí),文件掃描模塊71還用于對(duì)當(dāng)前所掃描的文件是否是相機(jī)文件進(jìn)行判斷,從而篩選出所有的相機(jī)文件。該篩選過程如下:獲取當(dāng)前待掃描的文件,判斷該文件后綴是否為相機(jī)文件格式,例如包括但不限于jpg/mp3/mp4/ram;若是,解析文件頭信息,判斷是否包含預(yù)設(shè)制造商信息,例如nubia;若是,確定該文件為相機(jī)文件;否則,判斷文件是否掃描完畢,如否,獲取下一待掃描的文件;否則,結(jié)束。
本實(shí)施例的終端7的文件掃描模塊71、處理模塊72的功能可以通過如圖1所示的終端的控制器實(shí)現(xiàn),文件掃描模塊71、處理模塊77具體可以構(gòu)造于如圖1所示的終端的控制器內(nèi)。
本實(shí)施例提供的終端,通過文件掃描模塊71對(duì)相機(jī)應(yīng)用的相機(jī)文件夾下的相機(jī)文件進(jìn)行掃描,當(dāng)掃描到相機(jī)文件夾下某一相機(jī)文件不存在時(shí),處理模塊72將相機(jī)應(yīng)用的媒體數(shù)據(jù)庫中該相機(jī)文件的文件記錄設(shè)置為未激活狀態(tài),且被設(shè)置為未激活狀態(tài)的文件記錄,在相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示。這樣,當(dāng)相機(jī)文件狀態(tài)更新后,該相機(jī)文件狀態(tài)更新前在媒體數(shù)據(jù)庫中的文件記錄并未被刪除,在狀態(tài)更新的相機(jī)文件恢復(fù)后,該相機(jī)文件在媒體數(shù)據(jù)庫中的文件記錄可對(duì)應(yīng)找回,且可確保照片文件信息(包括但不限于分類TAG、收藏、設(shè)置為標(biāo)題等)的一致性和完整性;同時(shí),未激活狀態(tài)的文件記錄在相機(jī)應(yīng)用的用戶交互顯示界面不進(jìn)行顯示,避免了用戶播放和編輯不存在的文件,提高了用戶體驗(yàn)的滿意度。
第四實(shí)施例
為了更好的理解本發(fā)明,本實(shí)施例在第三實(shí)施例的基礎(chǔ)上,以相機(jī)文件屬性信息和文件屬性記錄信息均包括文件名稱、存儲(chǔ)路徑、文件尺寸以及文件最后修改時(shí)間(還可進(jìn)一步包括文件制造商)為例,對(duì)本發(fā)明的相機(jī)文件管理方法具體過程做進(jìn)一步示例說明。參見圖8,包括:
S801:文件掃描模塊71對(duì)系統(tǒng)內(nèi)的相機(jī)文件夾下的文件進(jìn)行篩選,選出所有的相機(jī)文件。
文件掃描模塊71在進(jìn)行篩選時(shí),會(huì)對(duì)根據(jù)文件后綴及解析的文件頭信息等來進(jìn)行判定,篩選出系統(tǒng)內(nèi)的所有相機(jī)文件。
S802:文件掃描模塊71對(duì)相機(jī)文件進(jìn)行掃描。
文件掃描模塊71會(huì)根據(jù)預(yù)設(shè)掃描條件被觸發(fā)和接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知,分別確定是對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描,或是僅對(duì)相機(jī)文件夾下的指定相機(jī)文件進(jìn)行掃描。
其中,在啟動(dòng)相機(jī)應(yīng)用,或進(jìn)入相機(jī)應(yīng)用的用戶交互顯示界面,或外部存儲(chǔ)設(shè)備移除或插入(如SD卡的移入或移出),或接收到第三方應(yīng)用發(fā)送的相機(jī)文件夾內(nèi)容更新通知(如監(jiān)聽到注冊(cè)的廣播信息)時(shí),文件掃描模塊71會(huì)對(duì)相機(jī)文件夾下的所有相機(jī)文件進(jìn)行掃描。
S803:文件掃描模塊71根據(jù)掃描的結(jié)果確定相機(jī)文件的更新情況。
文件掃描模塊71在掃描時(shí),會(huì)分別獲取相機(jī)文件的相機(jī)文件屬性信息中的以及媒體數(shù)據(jù)庫中文件記錄中的文件屬性記錄信息中的,并進(jìn)行匹配,根據(jù)匹配結(jié)果確定相機(jī)文件的更新情況。
相機(jī)文件的更新情況至少包括:相機(jī)文件不存在;相機(jī)文件為新增文件;相機(jī)文件為恢復(fù)文件;相機(jī)文件的被修改這幾種情況。
S804:處理模塊72根據(jù)更新情況的不同分別進(jìn)行不同的媒體數(shù)據(jù)庫更新操作。
其中相機(jī)文件不存在包括:原有相機(jī)文件被刪除和SD卡移出等情況,此時(shí)媒體數(shù)據(jù)庫中的對(duì)應(yīng)文件記錄設(shè)置為未激活狀態(tài)。
相機(jī)文件為新增文件包括:拷貝新的相機(jī)文件到相機(jī)文件夾下等情況,此時(shí)在媒體數(shù)據(jù)庫中添加對(duì)應(yīng)的文件記錄,并設(shè)置為激活狀態(tài)。
相機(jī)文件為恢復(fù)文件包括:SD卡重新插入等情況,此時(shí)在媒體數(shù)據(jù)庫中將對(duì)應(yīng)為未激活狀態(tài)的文件記錄設(shè)置為激活狀態(tài)。相機(jī)文件的被修改包括:相機(jī)文件重命名為其他文件名或刪除相機(jī)文件后,拷貝一個(gè)同名相機(jī)文件等情況,此時(shí)在媒體數(shù)據(jù)庫中將對(duì)應(yīng)文件記錄中的文件屬性記錄信息進(jìn)行修改,修改的文件記錄狀態(tài)不發(fā)生改變。
S805:處理模塊72刪除處于未激活狀態(tài)的文件記錄中滿足失效條件的文件記錄。
本實(shí)施例中提供的終端7具體結(jié)構(gòu)可以參照?qǐng)D1。其中終端7的文件掃描模塊71、處理模塊72可以通過如圖1所示的終端的控制器實(shí)現(xiàn),文件掃描模塊71、處理模塊72具體可以構(gòu)造于如圖1所示的終端的控制器內(nèi)。
本實(shí)施例提供的終端7,當(dāng)相機(jī)文件進(jìn)行諸如重命名、刪除、移除SD卡等操作時(shí),媒體數(shù)據(jù)庫數(shù)據(jù)的文件記錄會(huì)實(shí)時(shí)同步更新,保證相機(jī)文件和文件記錄的一致性;同時(shí),在同步媒體數(shù)據(jù)庫時(shí),根據(jù)相機(jī)文件是否存在,將相機(jī)文件的狀態(tài)分別設(shè)置為激活和未激活狀態(tài),保證了相機(jī)文件信息的完整性;在文件記錄滿足預(yù)設(shè)刪除條件后,會(huì)刪除該文件記錄,避免了無用文件記錄占用媒體數(shù)據(jù)庫數(shù)據(jù)空間的問題,提高了用戶體驗(yàn)的滿意度。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行了描述,但是本發(fā)明并不局限于上述的具體實(shí)施方式,上述的具體實(shí)施方式僅僅是示意性的,而不是限制性的,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權(quán)利要求所保護(hù)的范圍情況下,還可做出很多形式,這些均屬于本發(fā)明的保護(hù)之內(nèi)。