现在,我正在尝试在Android上开发mediaPlayer应用程序,但带有FileDescriptor的setDataSource无法与一起使用。原因:java.io.IOException:准备失败。:status = 0x1 。 注释了以下示例工作的其他选项。
val afd = assets.openFd("asibue.mp3")
// mediaPlayer.setDataSource(afd)
mediaPlayer.setDataSource(afd.fileDescriptor)
// mediaPlayer.setDataSource(afd.fileDescriptor, afd.startOffset, afd.length)
mediaPlayer.prepare()
mediaPlayer.start()
Log.d("aaaaaa", mediaPlayer.duration.toString())
我应该如何使用setDataSource(FileDescriptor fd)?
这是因为FileDescriptor是从AssetFileDescriptor中提取的吗?资源存储在资产以外的其他位置时该怎么办?