如何同时播放两种声音?
Posted
技术标签:
【中文标题】如何同时播放两种声音?【英文标题】:How to play two sounds at the same time? 【发布时间】:2018-02-07 07:18:57 【问题描述】:我最近一直在尝试一些带有颤动声音的东西。使用 audioPlayer 插件。
但我正面临着一堵墙。我有背景音乐和小音效。 问题是我不能同时玩两个。如果我播放背景音乐,则不会播放音效。反之亦然。
知道如何解决这个问题吗?
【问题讨论】:
【参考方案1】:这是audioplayer 插件的问题,并且已经有一个issue 为它打开。作者表示,如果您想尝试实施它,他愿意接受拉取请求。
【讨论】:
【参考方案2】:使用媒体播放器。使用此代码设置背景音乐:
MediaPlayer backgroundMediaPlayer = MediaPlayer.create(getApplicationContext(), Uri.parse(PATH_TO_BACKGROUND_MUSIC));
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
@Override
public void onPrepared(MediaPlayer mediaPlayer)
mediaPlayer.start();
);
然后将 PATH_TO_BACKGROUND_MUSIC 替换为背景音乐路径。
然后当你想要你的声音效果发生时,使用这个代码:
MediaPlayer soundEffectMediaPlayer = MediaPlayer.create(getApplicationContext(), Uri.parse(PATH_TO_SOUND_EFFECT));
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
@Override
public void onPrepared(MediaPlayer mediaPlayer)
mediaPlayer.start();
);
然后将 PATH_TO_SOUND_EFFECT 替换为背景音乐路径。
您可以了解有关媒体播放器的信息here。
希望这会有所帮助!
【讨论】:
谢谢,但遗憾的是这行不通。它不是原生的安卓应用。但是一个使用 Flutter 框架在 dartlang 中完成的应用程序。 这给出了MediaPlayer finalized without being released
错误。以上是关于如何同时播放两种声音?的主要内容,如果未能解决你的问题,请参考以下文章