我正在尝试使用Intent来共享SD卡中的图像。但我的分享按钮有问题:它说:
没有应用可以执行此操作
那么,我必须使用哪种类型的代码来共享图像?我希望,也许有可能将我的图像作为电子邮件或消息发送。希望有人可以帮助我。
答案 0 :(得分:0)
首先,您需要将图像存储在存储中 像这样
Bitmap icon = mBitmap;
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/jpeg");
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
icon.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
File f = new File(Environment.getExternalStorageDirectory() + File.separator + "temporary_file.jpg");
try {
f.createNewFile();
FileOutputStream fo = new FileOutputStream(f);
fo.write(bytes.toByteArray());
} catch (IOException e) {
e.printStackTrace();
}
然后你可以这样分享
share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/temporary_file.jpg"));
startActivity(Intent.createChooser(share, "Share Image"));
答案 1 :(得分:0)
“没有应用可以执行此操作”,因为您的设备中没有安装共享应用程序。在你的真实设备中安装一些第三方应用程序,如facebook,whats app,gmail ......并运行你的应用程序来共享图像。
并开始如下活动:
share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/temporary_file.jpg"));
startActivity(Intent.createChooser(share, "Share Image"));