2015-10-05 93 views
1

有人可以告訴我是否有可能檢測到某些東西將被從設備中刪除像圖片,短信,彩信,音頻視頻等。就像在Windows中,當有東西是刪除它出現在回收站中。我想保存已刪除的項目,因爲它是項目需求(如果可能的話)如何檢測到某些東西將被刪除

+0

您是否試圖首先搜索?你有嘗試過什麼嗎? –

+1

關於fileobserver的研究 –

+0

@MuhammadBabar我說我不知道​​ –

回答

1

如註釋中所述,使用FileObserver刪除文件時可能會收到通知。要捕獲刪除事件,您可以使用:

String path = "/home/tim/files/test.txt"; 
FileObserver obs = new FileObserver(path) { 
    @Override 
    public void onEvent(int event, String file) { 
    if (event == FileObserver.DELETE) { 
     // do your thing. 
    } 
    } 
}; 
obs.startWatching(); 

請注意,這是爲了觀察特定文件。您還可以通過調整指向目錄的路徑來查看整個目錄,例如:String path = "/home/tim/files";

另請注意,這意味着文件已被刪除,並且您爲時已晚,無法介入並阻止刪除操作。據我所知,這是不可能的。取消刪除文件聽起來像是一種選擇,但也不是簡單的。

但是,您可以做的是在刪除時重新創建文件。如果有的話,也許可以從服務器上取得它。取決於文件的內容。

+0

這是什麼類型的路徑? String path =「/home/tim/test.txt」; –

+0

@FarhanAli這是我的Linux PC上的一個路徑,我用它爲例。您必須將路徑放在android設備上。 –

+0

引用[文檔](http://developer.android.com/reference/android/os/FileObserver.html#DELETE),'DELETE'事件類型表明「文件已從受監控目錄中刪除」。過去時表示FileObserver在文件被刪除後發現*,這對OP沒有幫助。如果您有證據證明文檔錯誤,請告訴我們! – CommonsWare