我正在尝试制作一个用于共享音频文件的按钮。这是行不通的。首先,我尝试直接从我的原始文件夹发送文件,而不是将其复制到手机卡上。那并没有解决我的问题。我尝试的第二件事是将文件保存到手机然后共享。将文件保存到手机的部分现在可以工作,但是当我尝试将音频文件共享到另一台设备时,所有兼容的应用程序都会崩溃(Whatsapp、Gmail 等)。
这是我的代码:
String sharePath = Environment.getExternalStorageDirectory().getPath()
+ "/Soundboard/Ringtones/custom_ringtone.ogg";
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("audio/*");
share.putExtra(Intent.EXTRA_STREAM, sharePath);
startActivity(Intent.createChooser(share, "Share Sound File"));
顺便说一下,音频文件是一个 .ogg 文件。我希望这些应用程序可以处理那种类型的文件。如果不是,我应该将其转换为 .mp3。
提前致谢!
原文由 Wannabe 发布,翻译遵循 CC BY-SA 4.0 许可协议
好的,发现我做错了什么。对于有同样问题的人,我是这样解决的:
我忘了将字符串解析为 uri。那是我必须添加的唯一一行代码。
Uri uri = Uri.parse(sharePath);
这是完整的休息:
另外不要忘记添加权限
WRITE_EXTERNAL_STORAGE
否则在运行应用程序时会出现错误。