java - 如何将原始文件夹中的音频文件共享到社交应用程序?

标签 java android android-studio

我想向我的音板应用程序添加共享选项,但现在我在从原始文件夹中获取音频文件时遇到问题。

我正在尝试使用该代码创建共享功能:

 public void onClick(View v){
                String sharePath = Environment.getExternalStorageDirectory().getPath()
                        + "/res/raw/sound1.mp3";
                Uri uri = Uri.parse(sharePath);
                Intent share = new Intent(Intent.ACTION_SEND);
                share.setType("audio/*");
                share.putExtra(Intent.EXTRA_STREAM, uri);
                startActivity(Intent.createChooser(share, "Share Sound File"));
            }

但是 Messenger 和其他应用程序在从我的应用程序获取音频文件时遇到问题。我应该先制作脚本将音频保存在手机存储中,然后使用该文件在其他应用程序中共享吗?

最佳答案

资源是开发计算机上的文件。它们不是设备文件系统上的文件。

Should I make script first to save audio on phone storage and then use that file to share in other apps?

将资源复制到internal storage某处(例如,getCacheDir())并设置 FileProvider 以允许您共享内容。

关于java - 如何将原始文件夹中的音频文件共享到社交应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46827950/

相关文章:

Java解析Json字节数组

java - 广播接收器类将状态发送到 fragment

java - Spring MVC View - 解析占位符

java - 如何为一个方法定义多个实现?

android - 如何减少 android 中用于 TessBaseAPI 的 tessdata 的大小?

android - 如何更改 PreferenceScreen 中的字体大小

android - 如何在操作栏中制作带有通知数量的图标?

android - 无法在 Android Studio 中更改 AVD 的模拟性能

java - 如何在 API 26 中添加音乐播放器通知

android - 导入OpenCV时缺少Android API 14