private void createShareIntent() {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
String file = "/mnt/sdcard/9gag_4155804.jpg";
File f = new File(file);
if (!f.exists()) {
Toast.makeText(getApplicationContext(), "File doesnt exists", Toast.LENGTH_SHORT).show();
return;
} else {
Toast.makeText(getApplicationContext(), "We can go on!!!", Toast.LENGTH_SHORT).show();
}
Uri uri = Uri.fromFile(f);
shareIntent.setType("image/jpeg");
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(shareIntent, "How do you want to share?"));
}
该文件存在,我没有收到Toast。 在调用此方法时,许多意图都是倾听的。 (Google云端硬盘,Mail,Plus等) 我点击Google Plus,它告诉我“并非所有媒体文件都可以附加到帖子中”。 使用Google云端硬盘或任何其他服务时也是如此。 我只是无法分享任何形象...
有什么想法吗?
//编辑 我得到了祝酒词“我们可以继续!!!”
答案 0 :(得分:-3)
您是否在清单中定义了一个意图过滤器。如果不加这个:
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType-"image/*"/>
</intent-filter>
你需要通知android系统这是一个隐含的意图。