Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "My text");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(http://onman.ir/colorfinder/sample.jpg));
sendIntent.setType("*/*");
sendIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(sendIntent, "Share using"));
此代码无法在与 Gmail
共享 Intent 时附加图像,在与仅共享多张图像或视频的 Facebook
共享时也会出错。当我使用 sendIntent.setType("image/*")
更改类型时,它会打开 Facebook
的共享窗口,但文本和图像为空白。
最佳答案
分享你可以使用这个代码
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("image/*");
shareIntent.putExtra(Intent.EXTRA_TEXT,"abc");
shareIntent.putExtra(Intent.EXTRA_STREAM, imagebitmap);
startActivity(Intent.createChooser(shareIntent, "Share using"));
但是如果你想在 facebook 中做它不会通过 Intent 工作你应该使用 facebook sdk 来共享图像和文本
FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this)
.setLink(url)
.setCaption(getString(R.string.fb_share))
.setDescription(getString(R.string.fb_share))
.setPicture(
"https://scontent-lhr3-1.xx.fbcdn.net/hphotos-xfp1/v/t1.0-9/11899955_1616850925232395_9146772907853639083_n.jpg?oh=3dd7da7bf03edee84689d66af2024880&oe=56793D62")
.build();
uiHelper.trackPendingDialogCall(shareDialog.present());
dismissProgressBar();
在您的代码中,您首先要直接共享图片 url,您需要获取位图,然后共享位图而不是 url
关于android - Intent 共享无法附加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33888261/