我正在开发一款应用,我正试图在Instagram上分享一张图片。
我正在使用以下代码:
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("image/jpeg");
i.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///"+savedPhotoPath));//savedPhotoPath is the path of my picture stored somewhere in the sdcard
startActivity(Intent.createChooser(i, "Share Image"));
问题是instagramm是与家庭活动一起发起的,(我想要分享该图片的活动)。
我试图像这样添加额外内容:
i.putExtra(Intent.EXTRA_STREAM, new File(savedPhotoPath));
和
i.putExtra(Intent.EXTRA_STREAM, Uri.parse(savedPhotoPath));
同样的结果,总是会启动Instagram应用程序的家庭活动。
任何想法如何解决这个问题?
问候,
答案 0 :(得分:2)
这只是我犯过的一个愚蠢的错误,我在file:///
路径上添加了一个斜杠,它将与savedPhotoPath连接,它将变成4个斜杠,所以正确的方法是添加额外的:
i.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+savedPhotoPath));// it will give : file:///sdcard/...