Flutter-Advanced-Share icon indicating copy to clipboard operation
Flutter-Advanced-Share copied to clipboard

Share image not work.

Open MistryHiral opened this issue 6 years ago • 3 comments

only first time share, the app is launched. When I try the second time, I am getting an error (in WahtsApp share ) 'this file format not support'. And i am using AdvancedShare.generic() method

E/DatabaseUtils(19589): java.lang.SecurityException: Permission Denial: reading android.support.v4.content.FileProvider uri content://com.example.wordguess.adv_provider/cache_files/1548324566.png from pid=27166, uid=10202 requires the provider be exported, or grantUriPermission()
E/DatabaseUtils(19589): 	at android.content.ContentProvider.enforceReadPermissionInner(ContentProvider.java:646)
E/DatabaseUtils(19589): 	at android.content.ContentProvider$Transport.enforceReadPermission(ContentProvider.java:493)
E/DatabaseUtils(19589): 	at android.content.ContentProvider$Transport.enforceFilePermission(ContentProvider.java:484)
E/DatabaseUtils(19589): 	at android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:429)
E/DatabaseUtils(19589): 	at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:313)
E/DatabaseUtils(19589): 	at android.os.Binder.execTransact(Binder.java:453)

MistryHiral avatar Jan 24 '19 10:01 MistryHiral

this also affects me

turanmahmudov avatar Feb 07 '19 02:02 turanmahmudov

seems like this repo is dead 😞

jawand avatar Mar 01 '19 09:03 jawand

@MistryHiral @jawand I fixed the issue with this way. In "android/src/main/java/in/mertcan/advancedshare/shareintents/Base.java" change this:

if (checkKey("url")) {
...
} 

to

if (checkKey("url")) {
           if (fileHelper.isFile()) {
               List<ResolveInfo> resInfoList = registrar.context().getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
               for (ResolveInfo resolveInfo : resInfoList) {
                   String packageName = resolveInfo.activityInfo.packageName;
                   registrar.context().grantUriPermission(packageName, fileHelper.getUri(), Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
               }

               intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
               intent.putExtra(Intent.EXTRA_STREAM, fileHelper.getUri());
               intent.setType(fileHelper.getType());
           }
       }

turanmahmudov avatar Mar 01 '19 22:03 turanmahmudov