欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種信息數(shù)據(jù)庫的異常處理方法和裝置的制造方法

文檔序號(hào):10686927閱讀:226來源:國知局
一種信息數(shù)據(jù)庫的異常處理方法和裝置的制造方法
【專利摘要】本發(fā)明實(shí)施例提供了一種信息數(shù)據(jù)庫的異常處理方法和裝置,該方法包括:在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù)據(jù)庫;當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫;將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。由于常用的備份機(jī)制可以保證備份數(shù)據(jù)庫中保存有損壞的信息數(shù)據(jù)庫時(shí)的大部分通信信息、甚至全部通信信息,因此,以此備份數(shù)據(jù)庫進(jìn)行恢復(fù),可以大大減少用戶的通信信息的丟失,提高了信息數(shù)據(jù)庫的實(shí)用性。
【專利說明】
一種信息數(shù)據(jù)庫的異常處理方法和裝置
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及移動(dòng)設(shè)備的技術(shù)領(lǐng)域,特別是涉及一種信息數(shù)據(jù)庫的異常處理方法和 一種信息數(shù)據(jù)庫的異常處理裝置。
【背景技術(shù)】
[0002] 隨著通信科技的發(fā)展,諸如手機(jī)、手表等移動(dòng)通信終端在人們的工作、學(xué)習(xí)、日常 交流等各方面的使用率也越來越高。
[0003] 在移動(dòng)通信終端的使用過程中,短信、彩信等與他人進(jìn)行通信的通信信息的使用 頻率較大,使得信息數(shù)據(jù)庫中累計(jì)的通信信息的數(shù)量也較多。
[0004] 移動(dòng)通信終端在運(yùn)行過程中,由于系統(tǒng)異常偶爾會(huì)出現(xiàn)掉電重啟或死機(jī)等異常情 況,此時(shí)信息數(shù)據(jù)庫可能出現(xiàn)突然損壞的情況,導(dǎo)致用戶的所有通信信息都會(huì)丟失。

【發(fā)明內(nèi)容】

[0005] 鑒于上述問題,為了解決上述信息數(shù)據(jù)庫在異常情況下?lián)p壞的問題,本發(fā)明實(shí)施 例提出了一種信息數(shù)據(jù)庫的異常處理方法和相應(yīng)的一種信息數(shù)據(jù)庫的異常處理裝置。
[0006] 為了解決上述問題,本發(fā)明實(shí)施例公開了一種信息數(shù)據(jù)庫的異常處理方法,包括:
[0007] 在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù)據(jù)庫;
[0008] 當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫;
[0009] 將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。
[0010] 優(yōu)選地,所述當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫的步驟包括:
[0011] 接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0012] 調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫;
[0013] 發(fā)送異常廣播。
[0014] 優(yōu)選地,所述將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫的步驟包括:
[0015] 當(dāng)監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中, 作為新的信息數(shù)據(jù)庫;
[0016] 重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0017] 加載所述新的信息數(shù)據(jù)庫。
[0018] 優(yōu)選地,所述當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫的步驟包括:
[0019] 接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0020] 復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫;
[0021] 調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫。
[0022] 優(yōu)選地,所述將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫的步驟包括:
[0023] 當(dāng)移動(dòng)通信終端重啟時(shí),檢測(cè)是否存在異常數(shù)據(jù)庫;
[0024] 當(dāng)存在異常數(shù)據(jù)庫時(shí),檢測(cè)所述信息數(shù)據(jù)庫的最新恢復(fù)時(shí)間是否小于所述異常數(shù) 據(jù)庫的創(chuàng)建時(shí)間;
[0025] 若是,則將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息 數(shù)據(jù)庫;
[0026] 重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0027]加載所述新的信息數(shù)據(jù)庫。
[0028] 優(yōu)選地,所述在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備 份數(shù)據(jù)庫的步驟包括:
[0029] 在移動(dòng)通信終端中查詢所述信息數(shù)據(jù)庫的上一次的備份時(shí)間;
[0030] 計(jì)算所述上一次的備份時(shí)間與當(dāng)前時(shí)間之間的時(shí)間差值;
[0031] 當(dāng)所述時(shí)間差值大于或等于預(yù)設(shè)的時(shí)間閾值時(shí),復(fù)制存儲(chǔ)通信信息的信息數(shù)據(jù) 庫,獲得備份數(shù)據(jù)庫。
[0032]本發(fā)明實(shí)施例還公開了一種信息數(shù)據(jù)庫的異常處理裝置,包括:
[0033]信息數(shù)據(jù)庫備份模塊,用于在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行 備份,獲得備份數(shù)據(jù)庫;
[0034]信息數(shù)據(jù)庫刪除模塊,用于在檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫;
[0035] 備份數(shù)據(jù)庫恢復(fù)模塊,用于將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。
[0036] 優(yōu)選地,所述信息數(shù)據(jù)庫刪除模塊包括:
[0037]第一異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0038] 第一刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫;
[0039] 異常廣播發(fā)送子模塊,用于發(fā)送異常廣播。
[0040] 優(yōu)選地,所述備份數(shù)據(jù)庫恢復(fù)模塊包括:
[0041] 第一備份數(shù)據(jù)庫復(fù)制子模塊,用于在監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制 至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息數(shù)據(jù)庫;
[0042]第一進(jìn)程重啟子模塊,用于重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0043] 第一信息數(shù)據(jù)庫加載子模塊,用于加載所述新的信息數(shù)據(jù)庫。
[0044] 優(yōu)選地,所述信息數(shù)據(jù)庫刪除模塊包括:
[0045] 第二異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息; [0046]信息數(shù)據(jù)復(fù)制子模塊,用于復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫;
[0047] 第二刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫。
[0048] 優(yōu)選地,所述備份數(shù)據(jù)庫恢復(fù)模塊包括:
[0049] 異常數(shù)據(jù)庫檢測(cè)子模塊,用于在移動(dòng)通信終端重啟時(shí),檢測(cè)是否存在異常數(shù)據(jù)庫;
[0050] 時(shí)間檢測(cè)子模塊,用于在存在異常數(shù)據(jù)庫時(shí),檢測(cè)所述信息數(shù)據(jù)庫的最新恢復(fù)時(shí) 間是否小于所述異常數(shù)據(jù)庫的創(chuàng)建時(shí)間;若是,則調(diào)用第二備份數(shù)據(jù)庫復(fù)制子模塊;
[0051] 第二備份數(shù)據(jù)庫復(fù)制子模塊,用于將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存 儲(chǔ)目錄中,作為新的信息數(shù)據(jù)庫;
[0052]第二進(jìn)程重啟子模塊,用于重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0053]第二信息數(shù)據(jù)庫加載子模塊,用于加載所述新的信息數(shù)據(jù)庫。
[0054] 優(yōu)選地,所述信息數(shù)據(jù)庫備份模塊包括:
[0055] 備份時(shí)間查詢子模塊,用于在移動(dòng)通信終端中查詢所述信息數(shù)據(jù)庫的上一次的備 份時(shí)間;
[0056] 時(shí)間差值計(jì)算子模塊,用于計(jì)算所述上一次的備份時(shí)間與當(dāng)前時(shí)間之間的時(shí)間差 值;
[0057] 備份數(shù)據(jù)庫獲得子模塊,用于在所述時(shí)間差值大于或等于預(yù)設(shè)的時(shí)間閾值時(shí),復(fù) 制存儲(chǔ)通信信息的信息數(shù)據(jù)庫,獲得備份數(shù)據(jù)庫。
[0058]本發(fā)明實(shí)施例包括以下優(yōu)點(diǎn):
[0059] 本發(fā)明實(shí)施例在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,移動(dòng)通 信終端在運(yùn)行過程中,由于系統(tǒng)異常偶爾會(huì)出現(xiàn)掉電重啟或死機(jī)等異常情況,此時(shí)信息數(shù) 據(jù)庫可能出現(xiàn)突然損壞的情況,則刪除該信息數(shù)據(jù)庫,并將備份的備份數(shù)據(jù)庫恢復(fù)為新的 信息數(shù)據(jù)庫,由于常用的備份機(jī)制可以保證備份數(shù)據(jù)庫中保存有損壞的信息數(shù)據(jù)庫時(shí)的大 部分通信信息、甚至全部通信信息,因此,以此備份數(shù)據(jù)庫進(jìn)行恢復(fù),可以大大減少用戶的 通信信息的丟失,提高了信息數(shù)據(jù)庫的實(shí)用性。
【附圖說明】
[0060] 圖1是本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例1的步驟流程圖;
[0061] 圖2是本發(fā)明實(shí)施例的一種定時(shí)備份的流程示例圖;
[0062]圖3是本發(fā)明實(shí)施例的一種在Android系統(tǒng)中信息數(shù)據(jù)庫的異常處理機(jī)制的示意 圖;
[0063] 圖4是本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例2的步驟流程圖;
[0064] 圖5是本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例3的步驟流程圖;
[0065] 圖6是本發(fā)明的一種信息數(shù)據(jù)庫的異常處理裝置實(shí)施例的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0066] 為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí) 施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0067] 參照?qǐng)D1,示出了本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例1的步驟流程 圖,具體可以包括如下步驟:
[0068] 步驟101,在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù) 據(jù)庫;
[0069] 在具體實(shí)現(xiàn)中,本發(fā)明實(shí)施例可以應(yīng)用可以通過蜂窩網(wǎng)絡(luò)等方式進(jìn)行通信的移動(dòng) 通信終端中,例如,手機(jī)、平板電腦、個(gè)人數(shù)字助理、穿戴設(shè)備(如眼鏡、手表等)等等。
[0070] 這些移動(dòng)通信終端的操作系統(tǒng)可以包括Android(安卓)、I0S、Windows Phone、 Windows 等等。
[0071]為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實(shí)施例,在本說明書中,將Android作為操 作系統(tǒng)的一種示例進(jìn)行說明。
[0072]移動(dòng)通信終端之間進(jìn)行通信,通常會(huì)產(chǎn)生數(shù)量不等的通信信息,例如,短信(sms)、 彩信(mms)等等。
[0073]這些通信信息,一般會(huì)存儲(chǔ)在系統(tǒng)的信息數(shù)據(jù)庫中,應(yīng)用界面上顯示的通信信息 的內(nèi)容可以通過查詢此信息數(shù)據(jù)庫文件得到的,供用戶進(jìn)行瀏覽、刪除、修改等操作。
[0074]其中,在信息數(shù)據(jù)庫中存儲(chǔ)的一般是彩信相關(guān)的關(guān)鍵信息,比如,附件類型、路徑 等,彩信的附件一般不存儲(chǔ)在信息數(shù)據(jù)庫中。
[0075] 以Android系統(tǒng)為例,信息數(shù)據(jù)庫可以為mmssms.db,其存儲(chǔ)目錄一般為data/ data/com?android?mms/databases/〇
[0076] mmssms.db中一般具有以下幾張表:
[0077] l、threads表(存放會(huì)話數(shù)據(jù)的表);
[0078] threads表的示例如下:
[0079]
[0080] 其中,_id:用于區(qū)分不同的電話號(hào)碼,系統(tǒng)會(huì)為不同的電話號(hào)碼分配不同的」d; [0081 ] date:會(huì)話產(chǎn)生的時(shí)間,如果收到來自同一個(gè)phone number多條信息,并且有多于 一條信息未讀,那么date可能表示收到的最后一條信息時(shí)的時(shí)間,也可能是這個(gè)phone number最后一次發(fā)送信息時(shí)的時(shí)間,可以統(tǒng)稱為與此phone number最后一次交互信息的時(shí) 間;
[0082] message_count:收到的信息的數(shù)目(sms和mms之和);
[0083] snippet:如果來自某個(gè)phone number,僅僅有一條信息,那么會(huì)是如下情況:
[0084] (1)如果是未接短信,代表未接短信的內(nèi)容;
[0085] (2)如果是未接彩信,代表未接彩信的subject。
[0086] 如果來自某個(gè)phone number,僅僅有多條信息,那么則是如下情況:
[0087] (1)如果是最后一條是未接短彳目,代表最后一條未接短彳目的內(nèi)容;
[0088] (2)如果是最后一條是未接彩信,代表最后一條未接彩信的subject。
[0089]然而,snippet字段保存的是此會(huì)話對(duì)應(yīng)的最近一條信息(有可能是短信或者彩 信,也有可能是接收類型或者發(fā)送類型)的內(nèi)容,而且在數(shù)據(jù)庫中此字段存儲(chǔ)的其實(shí)是最近 一條信息的完整內(nèi)容,只是界面布局里內(nèi)容一般只能顯示在一行,對(duì)于過長的內(nèi)容無法完 整顯示用省略號(hào)代替。
[0090] read:0代表未讀、1代表已讀;
[0091 ] has_attchment:代表來自該phone number的信息是否包含有附件。
[0092] 2、存放短信的表(sms表)
[0093] sms表的示例如下:
[0095] 其中,_id:區(qū)分不同的短信;
[0096] threads_id:(外鍵)引用threads表的_id;
[0097] date:對(duì)于接收類型的短信是該條短信接收的時(shí)間,對(duì)于發(fā)送類型的短信則是發(fā) 送此短信的時(shí)間。
[0098]另外sms表中還有一個(gè)type字段表示短信的類型為已發(fā)送或接收或正在發(fā)送或草 稿,同后面pdu表中msg_box的概念。
[0099] read:0代表未讀、1代表已讀;
[0100] body:表示具體的短信內(nèi)容(雖然在thread表的snippet字段已經(jīng)存儲(chǔ)了最近一條 信息完整的body內(nèi)容);
[0101 ] locked:鎖定短信,如果標(biāo)識(shí)某條信息為locked時(shí),刪除這條信息時(shí),系統(tǒng)會(huì)提示 "是否刪除locked信息"。
[0102] 3、存放彩信的表(pdu表、part表)
[0103] pdu表的示例如下:
[0104]
[0105] 其中,_id:區(qū)分不同的彩信
[0106] thread_id:外鍵(引用 thread 表的 _id)
[0107] msg_box:區(qū)分彩信的收件箱,發(fā)件箱,草稿箱等;
[0108] read:是否已讀,0代表未讀、1代表已讀;
[0109] sub:彩信的subject;
[0110] ct_l:如果彩彳目太大,或者由于網(wǎng)絡(luò)原因,也又是由于手機(jī)設(shè)備原因,dowload失 敗,彩信看不了,這個(gè)字段就會(huì)有彩信的網(wǎng)址。
[0111] part表的示例如下:
[0112]
[0113] 其中,_id:區(qū)分某條彩信的不同附件(包括文本,圖片,音頻,視頻等格式);
[0114] mid:外鍵,引用pdu表的_id.指示該附件屬于哪條彩信(一條彩信有可能包含有多 個(gè)圖片,多個(gè)音頻,多個(gè)視頻等);
[0115] ct:指示附件是什么類型的(text/表示文本,audio/表示音頻,video/表是視頻, image/表示圖片)
[0116] _data:標(biāo)明附件存放的位置;
[0117] text:表示彩信的主體body。
[0118] 4、存放phone number的表(Canonical_address表)
[0119] Canonical_address表的不例如下:
[0121 ] 其中,_id:外鍵,引用threads表的recipient_id字段;
[0122] address:代表發(fā)送或接收通信信息的移動(dòng)通信終端的phone number(電話號(hào)碼)。
[0123] 要想恢復(fù)通信信息,一般是備份信息數(shù)據(jù)庫,如_ssms. db。
[0124] 本發(fā)明實(shí)施例可以通過定時(shí)、定量、手動(dòng)觸發(fā)等方式進(jìn)行自動(dòng)備份一次保存信息 數(shù)據(jù)庫,如mms sms ? db 〇
[0125] 即從默認(rèn)的信息數(shù)據(jù)庫目錄,如data/data/com ? android ? mms/databases/中復(fù)制 一份保存信息數(shù)據(jù)庫(如mmssms.db),到另外一個(gè)目錄中。
[0126] 此目錄可選擇為data/data/com? android? mms/backup/,這樣同時(shí)就會(huì)有兩個(gè)信 息數(shù)據(jù)庫(如mmssms. db),一個(gè)是常規(guī)的用于正常顯示和操作,另一個(gè)是備份文件,用于當(dāng) 常規(guī)的信息數(shù)據(jù)庫損壞并刪除后,恢復(fù)通信信息。
[0127] 以定時(shí)備份為例,可以在移動(dòng)通信終端中查詢信息數(shù)據(jù)庫的上一次的備份時(shí)間;
[0128] 計(jì)算上一次的備份時(shí)間與當(dāng)前時(shí)間之間的時(shí)間差值;
[0129] 當(dāng)時(shí)間差值大于或等于預(yù)設(shè)的時(shí)間閾值(如24小時(shí))時(shí),復(fù)制存儲(chǔ)通信信息的信息 數(shù)據(jù)庫,獲得備份數(shù)據(jù)庫。
[0130] 為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明實(shí)施例,如圖2所示,以下通過具體的示例 來說明本發(fā)明實(shí)施例中信息數(shù)據(jù)庫的定時(shí)備份方法。
[0131] 在步驟S11中,移動(dòng)通信終端開機(jī),開始對(duì)定時(shí)進(jìn)行判斷。
[0132] 例如,在六11(11'〇1(1系統(tǒng)中,可以監(jiān)聽開機(jī)廣播&11(11'〇1(1.;[1^6111:.&(31:;[011.13001'_ COMPLETED0
[0133] 若監(jiān)聽到,則表示移動(dòng)通信終端啟動(dòng),可以啟動(dòng)定時(shí)備份的服務(wù)Server。
[0134] 在步驟S12中,判斷當(dāng)前時(shí)間currentTime與上一次的備份時(shí)間backupTime之間的 差是否大于或等于24小時(shí)hours(時(shí)間閾值):
[0135] (currentT ime-backupT ime)> = 24hours 〇
[0136] 其中,backupTime的初始值為為恢復(fù)出廠設(shè)置后首次開機(jī)的時(shí)間。
[0137] 若是,則執(zhí)行步驟S14,若否,則執(zhí)行步驟S13。
[0138] 在步驟S13中,啟動(dòng)定時(shí)器,定時(shí)器的啟動(dòng)時(shí)間為上一次的備份時(shí)間之后的24小 時(shí),即 backupTime+24hours 〇
[0139] 在步驟S14中,開始備份信息數(shù)據(jù)庫。
[0140]若備份成功則直接保存backupTime為當(dāng)前時(shí)間;
[0141]若失備份敗則可重試一次,之后不管成功與否都保存backupTime為當(dāng)前時(shí)間。
[0142]在步驟S15中,啟動(dòng)定時(shí)器,定時(shí)器的啟動(dòng)時(shí)間為上一次的備份時(shí)間之后的24小 時(shí),即 backupTime+24hours 〇
[0143] 在步驟S16中,到達(dá)(backupTime+24hours)的時(shí)間,定時(shí)器爆發(fā),備份信息數(shù)據(jù)庫。
[0144] 步驟102,當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫;
[0145] 步驟103,將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。
[0146] 在本發(fā)明實(shí)施例中,如果檢測(cè)到信息數(shù)據(jù)庫異常,則可以刪除信息數(shù)據(jù)庫。
[0147] 如圖3所示,在Android系統(tǒng)中,提供了SQLiteDatabase類代表一個(gè)數(shù)據(jù)庫(對(duì)應(yīng)底 層的mmssms. db文件),一旦應(yīng)用程序獲得了指定數(shù)據(jù)庫的SQLiteDatabase對(duì)象,就可以通 過此對(duì)象來操作信息數(shù)據(jù)庫了。
[0148] 另外,Android系統(tǒng)還提供了一個(gè)管理數(shù)據(jù)庫的工具類SQLiteOpenHelper,用于管 理信息數(shù)據(jù)庫的創(chuàng)建和版本更新,其構(gòu)造函數(shù)中有一個(gè)參數(shù)類型是 DatabaseErrorHandler,此參數(shù)會(huì)監(jiān)聽數(shù)據(jù)庫的各種異常情況。
[0149] 當(dāng)信息數(shù)據(jù)庫損壞的情況下,打開數(shù)據(jù)庫時(shí)會(huì)上報(bào) SQLiteDatabaseCorruptException異常,即數(shù)據(jù)庫的磁盤映像格式不正確,這個(gè)時(shí)候 DatabaseErrorHandl er里面的onCurrupt ion ()會(huì)被調(diào)用,然后會(huì)刪除損壞的信息數(shù)據(jù)庫。
[0150] 刪除損壞的信息數(shù)據(jù)庫之后,可以將備份數(shù)據(jù)庫從其存儲(chǔ)目錄,如data/data/ com.android.mms/backup/,復(fù)制到信息數(shù)據(jù)庫的存儲(chǔ)目錄中,如data/data/ com ? android .mms/databases/,作為新的信息數(shù)據(jù)庫。
[0151] 本發(fā)明實(shí)施例在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,移動(dòng)通 信終端在運(yùn)行過程中,由于系統(tǒng)異常偶爾會(huì)出現(xiàn)掉電重啟或死機(jī)等異常情況,此時(shí)信息數(shù) 據(jù)庫可能出現(xiàn)突然損壞的情況,則刪除該信息數(shù)據(jù)庫,并將備份的備份數(shù)據(jù)庫恢復(fù)為新的 信息數(shù)據(jù)庫,由于常用的備份機(jī)制可以保證備份數(shù)據(jù)庫中保存有損壞的信息數(shù)據(jù)庫時(shí)的大 部分通信信息、甚至全部通信信息,因此,以此備份數(shù)據(jù)庫進(jìn)行恢復(fù),可以大大減少用戶的 通信信息的丟失,提高了信息數(shù)據(jù)庫的實(shí)用性。
[0152] 參照?qǐng)D4,示出了本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例2的步驟流程 圖,具體可以包括如下步驟:
[0153] 步驟401,在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù) 據(jù)庫;
[0154] 步驟402,接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0155] 步驟403,調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫;
[0156] 步驟404,發(fā)送異常廣播;
[0157] 在Android系統(tǒng)中,當(dāng)信息數(shù)據(jù)庫損壞的情況下,打開數(shù)據(jù)庫時(shí)會(huì)上報(bào) SQLiteDatabaseCorruptException 異常的異常信息。
[0158] 當(dāng)DatabaseErrorHandler監(jiān)聽到信息數(shù)據(jù)庫有異常時(shí),onCurruption()會(huì)被調(diào) 用,在此接口里會(huì)刪除掉已損壞的信息數(shù)據(jù)庫。
[0159] 為了在通信信息應(yīng)用中可以及時(shí)獲取到信息數(shù)據(jù)庫是否被損壞的消息,本發(fā)明實(shí) 施例中修改了信息數(shù)據(jù)庫異常處理的機(jī)制,復(fù)寫DatabaseErrorHandler的onCurruption() 接口:
[0160]當(dāng)檢測(cè)到mmssms .db文件損壞后,調(diào)用onCurruption()接口(刪除接口)刪除損壞 的mmssms. db文件,同時(shí)發(fā)送一個(gè)異常廣播,告訴通信信息應(yīng)用的信息數(shù)據(jù)庫已損壞,需要 進(jìn)行恢復(fù)處理。
[0161] 步驟405,當(dāng)監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ) 目錄中,作為新的信息數(shù)據(jù)庫;
[0162] 步驟406,重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0163] 步驟407,加載所述新的信息數(shù)據(jù)庫。
[0164] 在具體實(shí)現(xiàn)中,通信信息的信息數(shù)據(jù)庫發(fā)生了意外損壞,但是移動(dòng)通信終端沒有 掉電重啟。
[0165] 此時(shí)可以在通信信息應(yīng)用中注冊(cè)監(jiān)聽信息數(shù)據(jù)庫異常的廣播接收器。
[0166] 當(dāng)接收到異常廣播后得知信息數(shù)據(jù)庫發(fā)生了損壞,且被損壞的信息數(shù)據(jù)庫已被刪 除,于是將自動(dòng)備份的mmssms . db文件復(fù)制到默認(rèn)信息數(shù)據(jù)庫的目錄data/data/ com.android.mms/databases/中。
[0167] 然后,重新啟動(dòng)通信信息應(yīng)用(com.android.mms)的進(jìn)程,當(dāng)用戶再次進(jìn)入信息界 面時(shí)會(huì)重新讀取data/data/com. android ? mms/databases/目錄下新的信息數(shù)據(jù)庫,加載通 信信息的數(shù)據(jù)并進(jìn)行顯示。
[0168] 參照?qǐng)D5,示出了本發(fā)明的一種信息數(shù)據(jù)庫的異常處理方法實(shí)施例3的步驟流程 圖,具體可以包括如下步驟:
[0169] 步驟501,在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù) 據(jù)庫;
[0170] 步驟502,接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0171 ]步驟503,復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫;
[0172]步驟504,調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫;
[0173]在Android系統(tǒng)中,當(dāng)信息數(shù)據(jù)庫損壞的情況下,打開數(shù)據(jù)庫時(shí)會(huì)上報(bào) SQLiteDatabaseCorruptException 異常的異常信息。
[0174] 當(dāng)DatabaseErrorHandler監(jiān)聽到信息數(shù)據(jù)庫有異常時(shí),onCurruption()會(huì)被調(diào) 用,在此接口里會(huì)刪除掉已損壞的信息數(shù)據(jù)庫。
[0175] 為了在通信信息應(yīng)用中可以及時(shí)獲取到信息數(shù)據(jù)庫是否被損壞的消息,本發(fā)明實(shí) 施例中修改了信息數(shù)據(jù)庫異常處理的機(jī)制,復(fù)寫DatabaseErrorHandler的onCurruption() 接口:
[0176] 當(dāng)檢測(cè)到mmssms. db文件損壞后、刪除mmssms. db文件之前,復(fù)制一份此mmssms. db 文件作為異常數(shù)據(jù)庫,命名為mmssms_abnormal .db。
[0177] 然后調(diào)用onCurruption()接口刪除損壞的mmssms .db文件,同時(shí)發(fā)送一個(gè)異常廣 播,告訴通信信息應(yīng)用的信息數(shù)據(jù)庫已損壞,需要進(jìn)行恢復(fù)處理。
[0178] 步驟505,當(dāng)移動(dòng)通信終端重啟時(shí),檢測(cè)是否存在異常數(shù)據(jù)庫;
[0179] 步驟506,當(dāng)存在異常數(shù)據(jù)庫時(shí),檢測(cè)所述信息數(shù)據(jù)庫的最新恢復(fù)時(shí)間是否小于所 述異常數(shù)據(jù)庫的創(chuàng)建時(shí)間;若是,則執(zhí)行步驟507;
[0180]步驟507,將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息 數(shù)據(jù)庫;
[0181] 步驟508,重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0182] 步驟509,加載所述新的信息數(shù)據(jù)庫。
[0183] 在本發(fā)明實(shí)施例中,若移動(dòng)通信終端突然發(fā)生掉電重啟,導(dǎo)致正在操作的通信信 息數(shù)據(jù)庫發(fā)生了損壞。
[0184] 即便在通信信息應(yīng)用中注冊(cè)監(jiān)聽信息數(shù)據(jù)庫異常的廣播接收器,也無法監(jiān)聽到異 常廣播。
[0185] 但是,在重啟之前DatabaseErrorHandler起了作用,即已復(fù)制出了mmssms_ abnormal. db文件,且刪除了損壞的mmssms. db文件。
[0186] 在重啟之后,增加一個(gè)檢測(cè)mmssms_abnormal. db文件是否存在,若存在,則在檢測(cè) 信息數(shù)據(jù)庫的最新恢復(fù)時(shí)間restoreTimd即上一次恢復(fù)的時(shí)間,默認(rèn)為恢復(fù)出廠設(shè)置后首 次開機(jī)的時(shí)間)是否小于異常數(shù)據(jù)庫的創(chuàng)建時(shí)間createTime。
[0187] 若restoreTime < createTime,說明移動(dòng)通信終端在開機(jī)前,其信息數(shù)據(jù)庫已經(jīng)損 壞,則可以將自動(dòng)備份的mmssms . db文件復(fù)制到默認(rèn)信息數(shù)據(jù)庫的目錄data/data/ com.android.mms/databases/中。
[0188] 然后,重新啟動(dòng)通信信息應(yīng)用(com.android.mms)的進(jìn)程,當(dāng)用戶再次進(jìn)入信息界 面時(shí)會(huì)重新讀取data/data/com. android ? mms/databases/目錄下新的信息數(shù)據(jù)庫,加載通 信信息的數(shù)據(jù)并進(jìn)行顯示。
[0189] 需要說明的是,異常數(shù)據(jù)庫可以上傳至服務(wù)器,以供技術(shù)人員對(duì)此進(jìn)行分析,尋找 異常的原因。
[0190] 需要說明的是,對(duì)于方法實(shí)施例,為了簡單描述,故將其都表述為一系列的動(dòng)作組 合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明實(shí)施例并不受所描述的動(dòng)作順序的限制,因?yàn)橐?據(jù)本發(fā)明實(shí)施例,某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該 知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作并不一定是本發(fā)明實(shí)施 例所必須的。
[0191] 參照?qǐng)D6,示出了本發(fā)明的一種信息數(shù)據(jù)庫的異常處理裝置實(shí)施例的結(jié)構(gòu)框圖,具 體可以包括如下模塊:
[0192] 信息數(shù)據(jù)庫備份模塊601,用于在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫 進(jìn)行備份,獲得備份數(shù)據(jù)庫;
[0193]信息數(shù)據(jù)庫刪除模塊602,用于在檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù) 庫;
[0194] 備份數(shù)據(jù)庫恢復(fù)模塊603,用于將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。
[0195] 在本發(fā)明的一個(gè)實(shí)施例中,所述信息數(shù)據(jù)庫刪除模塊602可以包括如下子模塊:
[0196] 第一異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0197] 第一刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫;
[0198] 異常廣播發(fā)送子模塊,用于發(fā)送異常廣播。
[0199] 在本發(fā)明的一個(gè)實(shí)施例中,所述備份數(shù)據(jù)庫恢復(fù)模塊603可以包括如下子模塊:
[0200] 第一備份數(shù)據(jù)庫復(fù)制子模塊,用于在監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制 至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息數(shù)據(jù)庫;
[0201] 第一進(jìn)程重啟子模塊,用于重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0202] 第一信息數(shù)據(jù)庫加載子模塊,用于加載所述新的信息數(shù)據(jù)庫。
[0203] 在本發(fā)明的一個(gè)實(shí)施例中,所述信息數(shù)據(jù)庫刪除模塊602可以包括如下子模塊:
[0204] 第二異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息;
[0205] 信息數(shù)據(jù)復(fù)制子模塊,用于復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫;
[0206] 第二刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫。
[0207] 在本發(fā)明的一個(gè)實(shí)施例中,所述備份數(shù)據(jù)庫恢復(fù)模塊603可以包括如下子模塊:
[0208] 異常數(shù)據(jù)庫檢測(cè)子模塊,用于在移動(dòng)通信終端重啟時(shí),檢測(cè)是否存在異常數(shù)據(jù)庫;
[0209] 時(shí)間檢測(cè)子模塊,用于在存在異常數(shù)據(jù)庫時(shí),檢測(cè)所述信息數(shù)據(jù)庫的最新恢復(fù)時(shí) 間是否小于所述異常數(shù)據(jù)庫的創(chuàng)建時(shí)間;若是,則調(diào)用第二備份數(shù)據(jù)庫復(fù)制子模塊;
[0210] 第二備份數(shù)據(jù)庫復(fù)制子模塊,用于將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存 儲(chǔ)目錄中,作為新的信息數(shù)據(jù)庫;
[0211]第二進(jìn)程重啟子模塊,用于重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程;
[0212] 第二信息數(shù)據(jù)庫加載子模塊,用于加載所述新的信息數(shù)據(jù)庫。
[0213] 在本發(fā)明的一個(gè)實(shí)施例中,所述信息數(shù)據(jù)庫備份模塊601可以包括如下子模塊:
[0214] 備份時(shí)間查詢子模塊,用于在移動(dòng)通信終端中查詢所述信息數(shù)據(jù)庫的上一次的備 份時(shí)間;
[0215] 時(shí)間差值計(jì)算子模塊,用于計(jì)算所述上一次的備份時(shí)間與當(dāng)前時(shí)間之間的時(shí)間差 值;
[0216] 備份數(shù)據(jù)庫獲得子模塊,用于在所述時(shí)間差值大于或等于預(yù)設(shè)的時(shí)間閾值時(shí),復(fù) 制存儲(chǔ)通信信息的信息數(shù)據(jù)庫,獲得備份數(shù)據(jù)庫。
[0217] 對(duì)于裝置實(shí)施例而言,由于其與方法實(shí)施例基本相似,所以描述的比較簡單,相關(guān) 之處參見方法實(shí)施例的部分說明即可。
[0218] 本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與 其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見即可。
[0219] 本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明實(shí)施例的實(shí)施例可提供為方法、裝置、或計(jì)算 機(jī)程序產(chǎn)品。因此,本發(fā)明實(shí)施例可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和 硬件方面的實(shí)施例的形式。而且,本發(fā)明實(shí)施例可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可 用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上 實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
[0220] 本發(fā)明實(shí)施例是參照根據(jù)本發(fā)明實(shí)施例的方法、終端設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序 產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖 中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些 計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理終端設(shè) 備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備的處理器執(zhí) 行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中 指定的功能的裝置。
[0221] 這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備 以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包 括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方 框或多個(gè)方框中指定的功能。
[0222] 這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理終端設(shè)備上,使得 在計(jì)算機(jī)或其他可編程終端設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在 計(jì)算機(jī)或其他可編程終端設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程 和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0223]盡管已描述了本發(fā)明實(shí)施例的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基 本創(chuàng)造性概念,則可對(duì)這些實(shí)施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為 包括優(yōu)選實(shí)施例以及落入本發(fā)明實(shí)施例范圍的所有變更和修改。
[0224] 最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將 一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作 之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語"包括"、"包含"或者其任何其他變體意 在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設(shè)備不僅包 括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品 或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語句"包括一個(gè)……"限定的要 素,并不排除在包括所述要素的過程、方法、物品或者終端設(shè)備中還存在另外的相同要素。
[0225] 以上對(duì)本發(fā)明所提供的一種信息數(shù)據(jù)庫的異常處理方法和一種信息數(shù)據(jù)庫的異 常處理裝置,進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了 闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域 的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,綜上 所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
【主權(quán)項(xiàng)】
1. 一種信息數(shù)據(jù)庫的異常處理方法,其特征在于,包括: 在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù)據(jù)庫; 當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫; 將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除 所述信息數(shù)據(jù)庫的步驟包括: 接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息; 調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫; 發(fā)送異常廣播。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù) 據(jù)庫的步驟包括: 當(dāng)監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為 新的信息數(shù)據(jù)庫; 重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程; 加載所述新的信息數(shù)據(jù)庫。4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述當(dāng)檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除 所述信息數(shù)據(jù)庫的步驟包括: 接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息; 復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫; 調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫。5. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù) 據(jù)庫的步驟包括: 當(dāng)移動(dòng)通信終端重啟時(shí),檢測(cè)是否存在異常數(shù)據(jù)庫; 當(dāng)存在異常數(shù)據(jù)庫時(shí),檢測(cè)所述信息數(shù)據(jù)庫的最新恢復(fù)時(shí)間是否小于所述異常數(shù)據(jù)庫 的創(chuàng)建時(shí)間; 若是,則將所述備份數(shù)據(jù)庫復(fù)制至所述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息數(shù)據(jù) 庫; 重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程; 加載所述新的信息數(shù)據(jù)庫。6. 根據(jù)權(quán)利要求1或2或3或4或5所述的方法,其特征在于,所述在移動(dòng)通信終端中對(duì)存 儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備份,獲得備份數(shù)據(jù)庫的步驟包括: 在移動(dòng)通信終端中查詢所述信息數(shù)據(jù)庫的上一次的備份時(shí)間; 計(jì)算所述上一次的備份時(shí)間與當(dāng)前時(shí)間之間的時(shí)間差值; 當(dāng)所述時(shí)間差值大于或等于預(yù)設(shè)的時(shí)間閾值時(shí),復(fù)制存儲(chǔ)通信信息的信息數(shù)據(jù)庫,獲 得備份數(shù)據(jù)庫。7. -種信息數(shù)據(jù)庫的異常處理裝置,其特征在于,包括: 信息數(shù)據(jù)庫備份模塊,用于在移動(dòng)通信終端中對(duì)存儲(chǔ)通信信息的信息數(shù)據(jù)庫進(jìn)行備 份,獲得備份數(shù)據(jù)庫; 信息數(shù)據(jù)庫刪除模塊,用于在檢測(cè)所述信息數(shù)據(jù)庫異常時(shí),刪除所述信息數(shù)據(jù)庫; 備份數(shù)據(jù)庫恢復(fù)模塊,用于將所述備份數(shù)據(jù)庫恢復(fù)為新的信息數(shù)據(jù)庫。8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述信息數(shù)據(jù)庫刪除模塊包括: 第一異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息; 第一刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫; 異常廣播發(fā)送子模塊,用于發(fā)送異常廣播。9. 根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述備份數(shù)據(jù)庫恢復(fù)模塊包括: 第一備份數(shù)據(jù)庫復(fù)制子模塊,用于在監(jiān)聽到異常廣播時(shí),將所述備份數(shù)據(jù)庫復(fù)制至所 述信息數(shù)據(jù)庫的存儲(chǔ)目錄中,作為新的信息數(shù)據(jù)庫; 第一進(jìn)程重啟子模塊,用于重啟所述信息數(shù)據(jù)庫所屬的進(jìn)程; 第一信息數(shù)據(jù)庫加載子模塊,用于加載所述新的信息數(shù)據(jù)庫。10. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述信息數(shù)據(jù)庫刪除模塊包括: 第二異常信息接收子模塊,用于接收在加載所述信息數(shù)據(jù)庫時(shí)上報(bào)的異常信息; 信息數(shù)據(jù)復(fù)制子模塊,用于復(fù)制所述信息數(shù)據(jù)庫,獲得異常數(shù)據(jù)庫; 第二刪除接口調(diào)用子模塊,用于調(diào)用指定的刪除接口刪除所述信息數(shù)據(jù)庫。
【文檔編號(hào)】G06F11/14GK106055424SQ201610340069
【公開日】2016年10月26日
【申請(qǐng)日】2016年5月19日
【發(fā)明人】王雙, 闕遠(yuǎn), 張艷鳳, 張博
【申請(qǐng)人】青島海信移動(dòng)通信技術(shù)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
彭山县| 九寨沟县| 仪陇县| 含山县| 峨山| 永修县| 台南县| 全南县| 广河县| 巢湖市| 扎赉特旗| 宣恩县| 黄冈市| 那坡县| 南昌市| 绥棱县| 江阴市| 乐亭县| 犍为县| 铁岭市| 长武县| 谢通门县| 汝城县| 法库县| 平潭县| 金昌市| 拉萨市| 张家口市| 新巴尔虎左旗| 邢台县| 会宁县| 陆川县| 呼玛县| 沙湾县| 浠水县| 宁陵县| 镇巴县| 定日县| 平罗县| 沂南县| 泗阳县|