这是我的问题...我想分享一张 png 图像。我有可绘制和 Assets 中的图像。当我使用 sharingIntent 时,它可以工作,但不是我想要的方式。共享的文件显示为带有数字且没有扩展名,并且某些应用程序会发送消息“未知文件”。我能做些什么??
这是我的代码:
Uri uri = Uri.parse("android.resource://com.example.shareimages/" + R.drawable.caja);
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("image/png");
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(shareIntent, "send"));
我尝试使用 Assets 中的文件而不是可绘制文件(带有此“file:///android_asset/...),但它没有用
最佳答案
尝试这样的事情:
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
shareIntent.setType("image/*");
// For a file in shared storage. For data in private storage, use a ContentProvider.
Uri uri = Uri.fromFile(getFileStreamPath(pathToImage));
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(shareIntent)
如果您想通过 Assets 文件夹共享它,则必须使用 ContentProvider。请参阅此答案以了解如何执行此操作:
关于android - 与其他应用分享图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13945919/