如果文件名中有空格,我无法在whatsapp中共享音频文件。但它在使用电子邮件客户端共享时有效。对于没有空格的文件名也可以正常工作。以下是我正在使用的代码
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
File F = new File(filePath);
F.setReadable(true, false);
Uri fileURI = Uri.fromFile(F);
Log.e("Share", "Share file url is " + fileURI);
sharingIntent.putExtra(Intent.EXTRA_TEXT, "Shared file");
sharingIntent.setType("*/*");
sharingIntent.putExtra(Intent.EXTRA_STREAM, fileURI);
我尝试过做filePath.replace(“”,“\”),无法正常工作。 应该做哪些更改来共享文件?
答案 0 :(得分:1)
当您尝试与WhatsApp共享具有空格的音频文件时,此功能正常运行:
String filePath = "file:///sdcard/Download/example attachment.mp3";
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(filePath));
shareIntent.setType("audio/*");
startActivity(Intent.createChooser(shareIntent, "Share audio file"));
答案 1 :(得分:0)
我能够使用与我发布的相同代码共享音频,只需对类型进行微小更改。下面的代码既适用于电子邮件,也适用于whatsapp共享:
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
File F = new File(filePath);
F.setReadable(true, false);
Uri fileURI = Uri.fromFile(F);
Log.e("Share", "Share file url is " + fileURI);
sharingIntent.putExtra(Intent.EXTRA_TEXT, "Shared file");
sharingIntent.setType("audio/*");
sharingIntent.putExtra(Intent.EXTRA_STREAM, fileURI);