Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 与ShareActionProvider共享BMP?_Java_Android_Image_Bmp - Fatal编程技术网

Java 与ShareActionProvider共享BMP?

Java 与ShareActionProvider共享BMP?,java,android,image,bmp,Java,Android,Image,Bmp,在我的应用程序中,我尝试与ShareActionProvider共享BMP。它不起作用。我是做错了还是需要将其转换为PNG(我不想处理文件)。如果是,我怎么做?谢谢 Bitmap bmp = qrUtil.create(WIFIQRCODE, pref2); isCodeGenerated = true; Intent intent = new Intent(Intent.ACTION_SEND);

在我的应用程序中,我尝试与ShareActionProvider共享BMP。它不起作用。我是做错了还是需要将其转换为PNG(我不想处理文件)。如果是,我怎么做?谢谢

Bitmap bmp = qrUtil.create(WIFIQRCODE, pref2);
                isCodeGenerated = true;
                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("image/png");
                intent.putExtra(Intent.EXTRA_STREAM, bmp);
                provider.setShareIntent(intent);

Intent.EXTRA_流
应该是指向要使用的图像文件的URI;你不能只在那里添加一个
位图。你应该这样做:

Uri uri = Uri.fromFile(new File(getFilesDir(), "img.jpg"));
shareIntent.putExtra(Intent.EXTRA_STREAM, uri.toString());

这将根据图像的实际位置而变化,但这是一般的想法。

我的位图是一个变量,我如何才能做到这一点?您需要将其写入文件系统并跟踪写入位置。哦,我想这样做,所以我不保存文件。很遗憾,这是不可能的。我可以执行Uri=Uri.fromFile(新文件)吗(String.valueOf(bmp))?