我很乐意与文字或网址分享图片。 我正在使用此代码,但我只是共享图像,更改“类型”的顺序使我分享两者,但仅作为电子邮件/ gmail 我究竟做错了什么?我的代码是:
EDIT1
Intent share = new Intent(Intent.ACTION_SEND_MULTIPLE);
share.setType("*/*");
share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/Wallpaper/1.jpg"));
share.putExtra(Intent.EXTRA_TEXT, "helloworld");
startActivity(Intent.createChooser(share, (getApplicationContext().getString(R.string.condividi))));
答案 0 :(得分:0)
也为文本指定MIME类型。 "text/plain"
是文本数据MIME的类型。尝试使用"*/*"
作为MIME,以便发送任何通用数据类型。
还可以尝试将ACTION_SEND
更改为 ACTION_SEND_MULTIPLE ,专门用于投放多个数据。
有关ACTION_SEND_MULTPLE和处理MIME类型的更多信息:
http://developer.android.com/reference/android/content/Intent.html
答案 1 :(得分:0)
如果要发送多个文件,请使用以下代码: -
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND_MULTIPLE);
intent.putExtra(Intent.EXTRA_SUBJECT, "Add any subject");
intent.setType("image/*"); /* sharing any type of image. Modify to your need */
ArrayList<Uri> files = new ArrayList<Uri>();
for(String path : filesToSend /* List of images you want to send */) {
File file = new File(path);
Uri uri = Uri.fromFile(file);
files.add(uri);
}
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, files); /* adding files to intent */
startActivity(intent);
答案 2 :(得分:0)
试试这个
File DoutFile = new File(path);
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(DoutFile));
share.putExtra(Intent.EXTRA_TEXT,
"" + getResources().getString(R.string.app_name));
startActivity(Intent.createChooser(share, "Share Image"));