zhanghai / MaterialFiles

Material Design file manager for Android
https://play.google.com/store/apps/details?id=me.zhanghai.android.files
GNU General Public License v3.0
5.44k stars 378 forks source link

App crashes when browsing large video files from SMB server #1219

Open lomirus opened 1 month ago

lomirus commented 1 month ago

When I browse some large files from SMB server, sometimes this app may crash, though it doesn't reproduce every time.

The more often situation is that when opening a video file from SMB server in Material Files, then even quickly sliding back to Material Files in seconds, this app will probably go back to Internal Storage page (about 80% possibility). It's very annoying when I want to check these files one by one.

I do not know much about Android development so I am not sure if it is just because the memory is not enough or because of any bug. Anyway, here's log from adb logcat *:E:

--------- beginning of crash
05-02 16:14:31.595 32033 32044 E AndroidRuntime: FATAL EXCEPTION: FinalizerWatchdogDaemon
05-02 16:14:31.595 32033 32044 E AndroidRuntime: Process: me.zhanghai.android.files, PID: 32033
05-02 16:14:31.595 32033 32044 E AndroidRuntime: java.util.concurrent.TimeoutException: android.media.MediaMetadataRetriever.finalize() timed out after 10 seconds
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at android.media.MediaMetadataRetriever.native_finalize(Native Method)
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at android.media.MediaMetadataRetriever.finalize(MediaMetadataRetriever.java:1109)
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at java.lang.Daemons$Daemon.run(Daemons.java:140)
05-02 16:14:31.595 32033 32044 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:1012)
05-02 17:18:37.583  3273  3290 E AndroidRuntime: FATAL EXCEPTION: FinalizerWatchdogDaemon
05-02 17:18:37.583  3273  3290 E AndroidRuntime: Process: me.zhanghai.android.files, PID: 3273
05-02 17:18:37.583  3273  3290 E AndroidRuntime: java.util.concurrent.TimeoutException: android.media.MediaMetadataRetriever.finalize() timed out after 10 seconds
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at android.media.MediaMetadataRetriever.native_finalize(Native Method)
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at android.media.MediaMetadataRetriever.finalize(MediaMetadataRetriever.java:1109)
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at java.lang.Daemons$Daemon.run(Daemons.java:140)
05-02 17:18:37.583  3273  3290 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:1012)
05-02 17:20:00.610 25072 25083 E AndroidRuntime: FATAL EXCEPTION: FinalizerWatchdogDaemon
05-02 17:20:00.610 25072 25083 E AndroidRuntime: Process: me.zhanghai.android.files, PID: 25072
05-02 17:20:00.610 25072 25083 E AndroidRuntime: java.util.concurrent.TimeoutException: android.media.MediaMetadataRetriever.finalize() timed out after 10 seconds
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at android.media.MediaMetadataRetriever.native_finalize(Native Method)
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at android.media.MediaMetadataRetriever.finalize(MediaMetadataRetriever.java:1109)
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at java.lang.Daemons$Daemon.run(Daemons.java:140)
05-02 17:20:00.610 25072 25083 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:1012)
05-02 17:38:21.954 26153 26166 E AndroidRuntime: FATAL EXCEPTION: FinalizerWatchdogDaemon
05-02 17:38:21.954 26153 26166 E AndroidRuntime: Process: me.zhanghai.android.files, PID: 26153
05-02 17:38:21.954 26153 26166 E AndroidRuntime: java.util.concurrent.TimeoutException: android.media.MediaMetadataRetriever.finalize() timed out after 10 seconds
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at android.media.MediaMetadataRetriever.native_finalize(Native Method)
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at android.media.MediaMetadataRetriever.finalize(MediaMetadataRetriever.java:1109)
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at java.lang.Daemons$Daemon.run(Daemons.java:140)
05-02 17:38:21.954 26153 26166 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:1012)