以下代码
final Intent sendImage = new Intent(Intent.ACTION_SEND);
sendImage.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
sendImage.putExtra(Intent.EXTRA_STREAM, theUri);
sendImage.setType("image/png");
startActivity(Intent.createChooser(sendImage, "Send Image using "));
允许使用任何应用程序(例如Dropbox,Gmail,普通消息/短信,Kik)发送图像,但不允许使用Facebook Messenger应用程序发送图像。
每当我选择Facebook Messenger应用程序作为用于发送照片的应用程序时,我得到一个"抱歉,Messenger现在无法处理此文件类型"异常。
Uri来自这种方法
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
File imageFile = new File(path, "Yogamoji!" + ".png");
FileOutputStream fileOutPutStream = new FileOutputStream(imageFile);
BitmapFactory.decodeStream(theAssets.open("emojis/" + fileName)).
compress(Bitmap.CompressFormat.PNG, 100, fileOutPutStream);
fileOutPutStream.flush();
fileOutPutStream.close();
return Uri.parse("file://" + imageFile.getAbsolutePath());
答案 0 :(得分:1)
我有类似的代码可行。唯一的区别是:
sendImage.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(uriFile));
使用
File uriFile = new File(Environment.getExternalStorageDirectory()+folderName+imageName);