作者javaddict (雜魚一條)
看板AndroidDev
標題[問題] Activity resume 後讀不到存在的檔案
時間Mon Jul 18 16:19:29 2016
有發現一個現象,Activity離開太久,已被系統殺掉,
使用者切回來之後,Android重新建立,但在跑到resume()
的時候,「偶爾」會發生每次在resume()都要讀的某個檔案
(在internal storage裡)會出FileNotFoundException,
有確認過path是對的,但是Android就是認為它不存在,
但那個檔案一直是存在的,App沒有殺掉它的程式碼,
然後重啟App也一切正常(因為那個檔案就是在啊,囧),
目前有work around這個問題(就離開Activity請使用者重進Activity)
,但想知道為什麼,有什麼可能的原因嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.250.205.229
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1468829971.A.36E.html
1F:推 aids61517: 程式碼貼一下? 你在進來這個Activity有沒有用Bundle傳 07/20 21:35
2F:→ aids61517: 資料?有的話要在onCreate裡面復原 07/20 21:36
3F:→ javaddict: 沒有用Bundle,很單純一個固定的內容不變的檔案,就是 07/22 10:12
4F:→ javaddict: 「偶爾」會在Activity重建的時候發FileNotFound 07/22 10:13
5F:→ javaddict: 讀檔的Thread不是UI Thread,不過我想跟這個應該沒關 07/22 10:14
6F:推 tobeylin: 貼一下code吧?資訊太少了 07/23 02:07
7F:→ htury: 貼code看看?比較可能是act沒死,只是某些obj被回收, 07/25 13:44
8F:→ htury: 可能檔名path的string obj被回收了 07/25 13:45