我需要执行一件非常简单的事情 - 与文本共享图像。
我发现最好的是以下
final Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, context
.getString(R.string.fragment_etc_share_text));
sendIntent.setType("image/jpeg");
final Uri imageUri = Uri.parse("android.resource://"
+ getActivity().getPackageName() + "/"
+ R.drawable.share_attachment);
sendIntent.putExtra(Intent.EXTRA_STREAM, imageUri);
startActivity(sendIntent);
share_attachment
是 .jpg 图片。
除了图像扩展名外,它工作正常。我在附件中得到了类似“23244232”的内容。如果我下载文件并在其名称中添加“.jpg” - 它可以很好地打开。但如果没有扩展,许多社交网络就不会发送它。
我尝试使用资产但没有成功,因为它实际上不是运行时的文件。
使用外部存储不是一种选择,因为该应用程序必须在没有 SD 卡的旧设备上运行,并且在 USB 插入和拔出时保持稳定。