mozilla-mobile/android-components

Cannot share images using Direct Share

Mugurell opened this issue · 4 comments

When trying to share images using Android's Direct Share feature - https://developer.android.com/codelabs/android-direct-share the action fails with

Caused by: java.lang.SecurityException: Permission Denial: opening provider mozilla.components.feature.downloads.provider.FileProvider from ProcessRecord{d075e90 23628:com.Slack/u0a227} (pid=23628, uid=10227) that is not exported from UID 10188

with potentially leaving the app in a bad state - saw that trying to share to Google Drive will result in an errors loop from which I could only get out by force closing the app.

┆Issue is synchronized with this Jira Task

Bubu commented

Thanks for opening the correspinding issue for this :).

My suggestion is to use ShareCompat.IntentBuilder from AndroidX Core. It contains code to work around this particular issue and will be updated in case future issues are identified.

Bubu commented

That sounds like a good idea for future refactoring, I won't have time to do work on that in the near future, so I'd leave that to the project maintainers.

Using ShareCompat.IntentBuilder seems like a welcome improvement.
@cketti Can you open a new ticket for this? I can also help with this.

@Bubu's fix resolves the problem for now so we'll land this in the meantime.