PWA on Android crashes when attaching video/audio files via file picker (JPEG/PDF work fine)
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 382
- Forks
- 127
- Avg merge
- 19h 31m
- Merged PRs (30d)
- 75
Description
Environment
· Nextcloud version: 34.0.1
· Nextcloud Forms version: 5.3.4
· Client: Android PWA (installed via "Add to Home Screen" from Google Chrome)
· Android version: 12 (MIUI 14)
· Android System WebView version: 150.0.7871.46
· Device: XIAOMI Poco x3 nfc
Steps to reproduce
- Open a form with file upload in the PWA
- Tap upload and select a video file (.mp4)
- Test with files of different sizes
Actual behavior
· 2.06 MB video → uploaded successfully
· 2.42 MB video → crash / error
· JPEG images up to 8 MB → uploaded successfully regardless of size
· The crash happens immediately on file selection, before network upload
Root cause (assumed)
Android WebView's file picker has a fixed IPC buffer (~2 MiB) when transferring selected files to the PWA. For video/audio, WebView likely tries to read metadata or generate a thumbnail within this limited buffer. Images are handled differently by the system media provider, bypassing this limit. This is a known class of WebView limitation, and a workaround on the Forms side is needed (e.g., chunked file reading).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file or test path is named. Start by reproducing the upload flow in the Android PWA with audio and video files around the reported size threshold, then trace the file-upload handling; done means larger media selections no longer crash while JPEG and PDF uploads continue to work.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, javascript
- Domain
- frontend, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100