gpt4 book ai didi

android - 当我按下按钮时不会发出声音

转载 作者:行者123 更新时间:2023-11-30 04:53:49 25 4
gpt4 key购买 nike

当我按下一个按钮时,我希望它发出由 firebase 定位的声音,但是当我按下它时我没有发出任何声音

        btnPlay.setOnClickListener {
try {
mediaPlayer.setDataSource("https://firebasestorage.googleapis.com/v0/b/nmixer-97a91.appspot.com/o/musics%2FDark%20World.mp3?alt=media&token=f8564ca6-cf59-468d-bd98-13ff646a1752")
mediaPlayer.setOnPreparedListener {
fun OnPrepared(mp:MediaPlayer) {
mp.start()
}
}
mediaPlayer.prepareAsync()
}catch (e:IOException){
e.printStackTrace()
}

最佳答案

您需要将您的 .mp3 URL 解析为 URI 并将其传递给 MediaPlayer.create() ,也不要调用 mediaPlayer.prepareAsync() 因为 mediaPlayer = MediaPlayer.create(MainActivity.this, uri); 已经在准备 MediaPlayer 返回,因此您不能再次调用 prepare,并且只要您想流式传输音频,就需要使用 setAudioAttributes,因为 setAudioStreamType 现已弃用。

Uri uri = Uri.parse("https://firebasestorage.googleapis.com/v0/b/nmixer-97a91.appspot.com/o/musics%2FDark%20World.mp3?alt=media&token=f8564ca6-cf59-468d-bd98-13ff646a1752");

btnPlay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mediaPlayer = MediaPlayer.create(MainActivity.this, uri);
mediaPlayer.setAudioAttributes(
new AudioAttributes
.Builder()
.setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
.build());
mediaPlayer.start();
}
});

关于android - 当我按下按钮时不会发出声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59567101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com