51CTO專欄 李洋談Android設備短信丟失技術原因
原創很多Android手機用戶都有手機短信莫名其妙丟失的情況。很多人都不明白,為什么會丟失呢?本文將探究一下個中原因,希望能對用戶有所幫助。
***類原因:存儲原因
1.1 Android管理的SQLite數據庫出錯
Android對短信的管理都是通過SQLite來進行的,且所有短信都是存儲在相應的數據庫中,其存儲路徑通常為dbdata/databases/com.android.providers.telephony/(不同的Android系統,路經可能有細微區別)下的mmssms.db數據庫,該數據庫維護了近20張表格,其中短信就存儲在sms表格中。因此,若該數據庫出錯或者被刪除(手機沒有root權限無法讀取和刪除該數據庫),則所有的短信將會丟失。
1.2 存儲介質出現故障
Android手機存儲(Flash存儲)是短信默認的物理存儲介質,若手機存儲出現故障,則可能使得短信丟失。同樣道理,若將短信設定為存儲在SD卡上,若SD卡出現故障,同樣可能造成短信丟失。
第二類原因:應用程序原因
2.1 具有操作短信權限的應用程序出錯
操作短信的Android應用程序較多,如Go短信、超級短信等都可以輔助用戶進行短信操作,因此對存儲在手機存儲介質上的短信也有刪除權限。若這些軟件不可預期(不由用戶執行)地執行短信刪除的操作,則短信也可能丟失。
第三類原因:Android系統自身的穩定性問題
有數以萬計的搜索結果顯示Android手機具有不穩定性,如手機意外重啟后短信丟失等。這都是由于Android系統自身的穩定性造成的。用戶可以通過升級***的Android版本,以及定期備份短信和數據的辦法來避免由于系統不穩定而造成的數據丟失問題。
第四類原因:配置及操作原因
4.1 手機短信刪除設置
Android手機可以對手機短信進行設置,并在一次會話(短信發送方-接收方進行的短信交流稱為會話)超過設定的閾值,則系統將會刪除會話中保留時間最長的短信,以保證不超過閾值。經過測試,這種刪除不是批量的,是一條一條的。如當會話的短信數目達到閾值200時,用戶發送第201條短信,則Android自動將該會話的第1條短信刪除。具體的操作方法是:信息->設置->存儲設置->設置刪除舊短信、短信限制和彩信限制。
4.2 恢復出廠設置
用戶使用Android手機的恢復出廠設置功能也可能造成短信、應用程序和其他數據的丟失。具體操作方法是:應用程序->設置->隱私權->恢復出場設置。
4.3 誤操作
Android支持短信的批量刪除,若用戶誤操作,也有可能將短信意外地全部刪除。具體操作方法是:信息->設置->刪除會話。