我有一個應用程序,我在位於外部存儲卡的文件上寫入日誌。 此應用程序在很多相同的設備上運行,當用戶報告問題時,我們通過mdm系統檢索日誌以瞭解原因。每件事情都很好,但有時我們發現日誌中有「漏洞」(我們看到Web服務在特定的時間範圍內調用,但文件中沒有日誌)。我用來編寫代碼的代碼是下面的,我真的不明白,怎麼能說是不可能性在Android設備上的外部SD卡上的文件上寫日誌
FileWriter filewriter = null;
try {
filewriter = new FileWriter(file,filewriter.append("my log message\r\n");
} catch (Exception e) {
} finally {
try {
filewriter.close();
filewriter = null;
} catch (Exception e) {
}
}
的file
變量每次使用初始化一次。
什麼可能是缺少日誌記錄的原因?我應該調查哪個方向?我唯一的嫌疑人沒有通過分析用戶的設備得到證實:在運行android 2.3.5的galaxy s2上,外部sdcard的掛載點是「\ sdcard \ external_sd」,如果沒有,該虛擬路徑在物理上對應於內部存儲器外部存儲器,否則到外部存儲器;所以我認爲缺少的記錄是由於任何原因暫時不可用,因爲任何原因外部存儲和文件被寫入內部存儲器,但是當我在我的手掌握了發生此問題的PDA時,沒有文件在那條路上。
有沒有人有類似的問題?我不知道這是怎麼發生
感謝