Java 如何在内部存储器中存储音频文件字节数组?
我正在开发一个音频文件传输应用程序,其中一个音频文件在两个android设备之间传输 我以字节数组的形式接收音频文件。现在,我有一个音频文件的字节数组。我想将此字节数组转换为音频文件,然后将输出音频文件保存在设备内部存储器中,以便播放该音频文件。我怎样才能在安卓系统中做到这一点 这是我从接收端收到的代码Java 如何在内部存储器中存储音频文件字节数组?,java,android,arrays,android-mediaplayer,media,Java,Android,Arrays,Android Mediaplayer,Media,我正在开发一个音频文件传输应用程序,其中一个音频文件在两个android设备之间传输 我以字节数组的形式接收音频文件。现在,我有一个音频文件的字节数组。我想将此字节数组转换为音频文件,然后将输出音频文件保存在设备内部存储器中,以便播放该音频文件。我怎样才能在安卓系统中做到这一点 这是我从接收端收到的代码 private void setMessageNotification_sound(@NonNull String topic, byte[] mp3SoundByteArray){ //
private void setMessageNotification_sound(@NonNull String topic, byte[] mp3SoundByteArray){
// create temp file that will hold byte array
File tempMp3 = File.createTempFile("audio", "mp3", getCacheDir());
tempMp3.deleteOnExit();
FileOutputStream fos = new FileOutputStream(tempMp3);
fos.write(mp3SoundByteArray);
fos.close();
}
这里,“mp3SoundByteArray”是我收到的作为字节数组的音频文件。现在我想把这个字节数组转换成音频文件,然后把这个fle保存到内部设备中。我该怎么做????????您的代码已经在这样做了。Sowny ask?我检查了设备存储中传输的文件,但在任何地方都找不到。所以我认为我的代码不起作用。我在代码中漏掉了一些东西。你是怎么查找的?设备上的文件资源管理器应用无法访问应用的缓存目录。所以你当时找不到。我不知道这个关于缓存目录的信息。我使用“Environment.getExternalStorageDirectory()解决了这个问题”