java - 与 ShareActionProvider 共享 BMP?

标签 java android image bmp

在我的应用程序中,我试图与 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_STREAM 应该是指向您要使用的图像文件的 URI;你不能只在那里添加一个 Bitmap 。你应该这样做:

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

这会根据图片的实际位置而改变,但这是一般的想法。

关于java - 与 ShareActionProvider 共享 BMP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19941458/

相关文章:

android - Sms BroadCastReceiver 泄漏内存

python - 用于图像比较的 SSIM : issue with image shape

java - 在 Java 的 UI 中显示金钱的正确方法是什么?

java - 嵌入式 Tomcat 8 无法启动

java - Wicket - DataTable 中的自定义页面导航

android - 为什么动态创建的SeekBar不带我的颜色?

java - 如何在延时后执行某个方法?

html - 创建响应式图像行

c++ - 为 QProgressBar 上的图像设置着色

java - 如何在 android java 中发出相同的 cURL 请求?