Bug - ⚠️ APP Crash: `FileUriExposedException`
- Dominant language
- Kotlin
- Stars
- 5.6k
- Forks
- 2k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 92
Description
### ⚠️ Before posting ⚠️
- [x] This is a **bug**, not a question or an enhancement.
- [x] I've [searched for similar issues](https://github.com/nextcloud/android/issues) and didn't find a duplicate.
- [x] I've written a clear and descriptive title for this issue, not just "Bug" or "Crash".
- [x] I agree to follow Nextcloud's [Code of Conduct](https://nextcloud.com/contribute/code-of-conduct/).
### Steps to reproduce
1.Open app
2. This happens ...😞😩
### Expected behaviour
App crash
⚠️ Don't have more info...
### Actual behaviour
### Cause of error
```java
Exception in thread "main" android.os.FileUriExposedException: file:///storage/emulated/0/Pictures/Screenshots/Screenshot_20250325-193028.png exposed beyond app through Intent.getData()
at android.os.StrictMode.onFileUriExposed(StrictMode.java:2208)
at android.net.Uri.checkFileUriExposed(Uri.java:2407)
at android.content.Intent.prepareToLeaveProcess(Intent.java:11860)
at android.content.Intent.prepareToLeaveProcess(Intent.java:11809)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1800)
at android.app.Activity.startActivityForResult(Activity.java:5471)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.kt:704)
at android.app.Activity.startActivityForResult(Activity.java:5429)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.kt:683)
at android.app.Activity.startActivity(Activity.java:5953)
at android.app.Activity.startActivity(Activity.java:5907)
at com.owncloud.android.ui.adapter.UploadListAdapter.openFileWithDefault(UploadListAdapter.java:922)
at com.owncloud.android.ui.adapter.UploadListAdapter.onUploadingItemClick(UploadListAdapter.java:881)
at com.owncloud.android.ui.adapter.UploadListAdapter.lambda$onBindViewHolder$14(UploadListAdapter.java:484)
at com.owncloud.android.ui.adapter.UploadListAdapter.$r8$lambda$t2XxkrqbHDPdB1V5Ly_h-1uZTrk(Unknown Source:0)
at com.owncloud.android.ui.adapter.UploadListAdapter$$ExternalSyntheticLambda6.onClick(D8$$SyntheticClass:0)
at android.view.View.performClick(View.java:7537)
at android.view.View.performClickInternal(View.java:7510)
at android.view.View.-$$Nest$mperformClickInternal(Unknown Source:0)
at android.view.View$PerformClick.run(View.java:29548)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7937)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:569)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1019)
```
### App information
* ID: `com.nextcloud.client`
* Version: `30310090`
* Build flavor: `gplay`
### Device information
* Brand: `FOSSiBOT`
* Device: `F101_P`
* Model: `F101`
* Id: `TP1A.220624.014`
* Product: `F101_P_EEA`
### Firmware
* SDK: `33`
* Release: `13`
* Incremental: `1713277134`
### Android version
13
### Device brand and model
* Brand: `FOSSiBOT` * Device: `F101_P` * Model: `F101`
### Stock or custom OS?
Stock
### Nextcloud android app version
3.31.0
### Nextcloud server version
Latest - 26/03/2025
### Using a reverse proxy?
I don't know
### Android logs
### Cause of error
```java
Exception in thread "main" android.os.FileUriExposedException: file:///storage/emulated/0/Pictures/Screenshots/Screenshot_20250325-193028.png exposed beyond app through Intent.getData()
at android.os.StrictMode.onFileUriExposed(StrictMode.java:2208)
at android.net.Uri.checkFileUriExposed(Uri.java:2407)
at android.content.Intent.prepareToLeaveProcess(Intent.java:11860)
at android.content.Intent.prepareToLeaveProcess(Intent.java:11809)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1800)
at android.app.Activity.startActivityForResult(Activity.java:5471)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.kt:704)
at android.app.Activity.startActivityForResult(Activity.java:5429)
at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.kt:683)
at android.app.Activity.startActivity(Activity.java:5953)
at android.app.Activity.startActivity(Activity.java:5907)
at com.owncloud.android.ui.adapter.UploadListAdapter.openFileWithDefault(UploadListAdapter.java:922)
at com.owncloud.android.ui.adapter.UploadListAdapter.onUploadingItemClick(UploadListAdapter.java:881)
at com.owncloud.android.ui.adapter.UploadListAdapter.lambda$onBindViewHolder$14(UploadListAdapter.java:484)
at com.owncloud.android.ui.adapter.UploadListAdapter.$r8$lambda$t2XxkrqbHDPdB1V5Ly_h-1uZTrk(Unknown Source:0)
at com.owncloud.android.ui.adapter.UploadListAdapter$$ExternalSyntheticLambda6.onClick(D8$$SyntheticClass:0)
at android.view.View.performClick(View.java:7537)
at android.view.View.performClickInternal(View.java:7510)
at android.view.View.-$$Nest$mperformClickInternal(Unknown Source:0)
at android.view.View$PerformClick.run(View.java:29548)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7937)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:569)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1019)
```
### App information
* ID: `com.nextcloud.client`
* Version: `30310090`
* Build flavor: `gplay`
### Device information
* Brand: `FOSSiBOT`
* Device: `F101_P`
* Model: `F101`
* Id: `TP1A.220624.014`
* Product: `F101_P_EEA`
### Firmware
* SDK: `33`
* Release: `13`
* Incremental: `1713277134`
### Server error logs
```bash
```
### Additional information
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.