gpt4 book ai didi

java - 当另一个声音播放时停止播放上一个声音

转载 作者:太空宇宙 更新时间:2023-11-04 12:09:46 25 4
gpt4 key购买 nike

我在 Activity 中播放声音时遇到问题,我有闹钟管理器,我使用媒体播放器来播放声音,现在当我尝试设置两个闹钟(假设这两个闹钟与它们的时间只有 1 分钟的差异)时,第一个闹钟响了,我没有关闭该 Activity ,然后再等待一分钟,另一个 Activity 弹出,然后也播放声音,因此有两个声音在后台播放。

我想让前一个 Activity 的声音在前面的另一个警报响起时停止

最佳答案

在您的 list 中将此属性放入 Activity 中:

<activity
android:name=".YourActivity"
android:launchMode="singleTop">

launchMode 的含义以及可能的状态,请参阅此处的文档:https://developer.android.com/guide/topics/manifest/activity-element.html

那么您的 Activity 只会开始一次。如果它已经启动,它就会进入前台并且不会出现第二个。对于媒体播放器:

if(mediaPlayer!=null){

if(mediaPlayer.isPlaying()){

mediaPlayer.stop();
mediaPlayer.release();
}


mediaPlayer = MediaPlayer.create(this, R.raw.your_sound);
mediaPlayer.start();
}

如果您之前已释放过 mediaPlayer,请确保不要调用 mediaPlayer.isPlaying()。这将抛出一个illegalStateException。这只是从头开始,您必须根据您的需要进行调整。

关于java - 当另一个声音播放时停止播放上一个声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39959574/

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