Android:在其他应用上与Intent共享位图

时间:2015-01-18 15:07:27

标签: java android android-intent bitmap android-sharing

我有一个使用Android Query创建的位图文件:

aq = new AQuery(HomeCategoryActivity.this);
aq.ajax(currentUrl,Bitmap.class,0,new AjaxCallback<Bitmap>(){
        @Override
        public void callback(String url, Bitmap object, AjaxStatus status) {
            if(object != null)
            {
                bmp = object;
            }
        }
    });

bmp是一个全局初始化的变量,它被上面的代码正确保存并且NOT NULL,我检查了。

现在,我想使用此功能在其他应用上共享此位图:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/jpeg");
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(bmp));
startActivity(Intent.createChooser(intent, "Share Product via:"));

这不起作用,因为代码可能是错误的。我应该做些什么改变?

我想在Fb,insta等上分享图片

1 个答案:

答案 0 :(得分:0)

将位图保存到外部存储并获取位图图像的路径

然后将Uri.parse(path)传递给意图。

有关详细信息,请参阅此链接http://developer.android.com/training/sharing/send.html

Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("image/jpeg");
    intent.putExtra(Intent.EXTRA_STREAM, Uri.parseUri(path));
    startActivity(Intent.createChooser(intent, "Share Product via:"));