Skip to content

fix: media scan on download for Android 11+#16726

Open
mykh-hailo wants to merge 1 commit intonextcloud:masterfrom
mykh-hailo:fix/media-scan-on-download
Open

fix: media scan on download for Android 11+#16726
mykh-hailo wants to merge 1 commit intonextcloud:masterfrom
mykh-hailo:fix/media-scan-on-download

Conversation

@mykh-hailo
Copy link

@mykh-hailo mykh-hailo commented Mar 20, 2026

Summary

Ensures downloaded files are scanned and indexed so they appear in the device’s media library (e.g. Photos/Gallery) on Android 11 (API 30) and above.

Closes: #16101

Problem

In triggerMediaScan(), Android 11+ was handled by only logging "SDK > 29, skipping media scan" and not performing any scan. As a result, files downloaded via the Nextcloud app were not added to the MediaStore and did not show up in system media apps.

Solution

Use MediaScannerConnection.scanFile() for devices with SDK ≥ 30 instead of skipping the scan. This API:

Works correctly on Android 10+
Takes the file path and optional MIME type
Uses a callback for success and failure
Logs scan completion or failure for debugging

Changes

  • FileDataStorageManager.java

    • Added MediaScannerConnection import
    • Replaced the “skip” logic on Android 11+ with MediaScannerConnection.scanFile()
    • Passes the file’s MIME type when OCFile is available
    • Adds callback logging for scan success and failure

This PR was generated by Mykhailo. View the repository job log.

@mykh-hailo mykh-hailo force-pushed the fix/media-scan-on-download branch from 6c58db1 to 8a29a57 Compare March 20, 2026 21:28
@mykh-hailo
Copy link
Author

@alperozturk96 I am happy for my first contribution on nextcloud-android.
I'd appreciate it if you check and leave some comments on it.

Signed-off-by: mykh-hailo <kristianderonta0205@gmail.com>
@mykh-hailo mykh-hailo force-pushed the fix/media-scan-on-download branch from 8a29a57 to 7e2130d Compare March 21, 2026 03:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment