看板 AndroidDev 關於我們 聯絡資訊
聽你描述問題是發生在按下list item後會發生ANR 所以我只看你Project中的 OnItemClickListener 我認為問題是出在這一段 https://gist.github.com/deltaguita/626cc463406cc1d8c7eb scanFile 很明顯是會去訪問Disk(例如SD卡)的 訪問Disk行為會比較耗費時間,應該要實做AsyncTask 在background 操作才對 S2可以正常執行我猜是因為他的硬體規格較Xperia P高的關係 在ANR發生之前就完成訪問了 ※ 引述《redok (火焰)》之銘言: : 大家好 : 我做了一個list view讀了某資料夾的影片檔 : 然後按下去就會用自製的影片播放器播放影片 : 後來我試了Samsung S2 可以正常執行 : 但是 Sony Xperia P 卻不行執行 (導致ANR) : 會不會有可能某個檔案被我佔用了 : 另一個程式要執行時因為該影片被佔用而無法使用呢? : 或者其它可能性? : 我自己是有在播放影片前用 MediaScannerConnection 來確保有該檔案QQ : 弄到現在不知道該怎麼辦QQ : 以下是完整程式碼 : https://dl.dropboxusercontent.com/u/110205128/VideoPlayer.zip : 謝謝大家的幫助! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.37.235 ※ 文章網址: http://www.ptt.cc/bbs/AndroidDev/M.1401265818.A.226.html ※ 編輯: Deltaguita (220.135.37.235), 05/28/2014 16:35:08
redok:QQ好像不是這個問題耶,當初沒加也有原本的問題,後來才加上 05/29 02:35
redok:mediascannerconnection 05/29 02:35
Deltaguita:那就要請你用刪去法 看到底是哪個指令造成的:) 05/29 02:38
Deltaguita:再來看可以怎麼解決 05/29 02:38
redok:謝謝大大的幫助! 只好用土本煉鋼的方法找問題了QQ Log.d大 05/30 12:51
redok:法 05/30 12:51