gpt4 book ai didi

java - 简单的静音问题?

转载 作者:行者123 更新时间:2023-12-03 02:33:36 26 4
gpt4 key购买 nike

我正在制作具有静音和取消静音功能的应用程序。问题是,当我按下静音键时,铃声会成功静音,但MediaPlayer中的音频仍会播放。顺便说一句:音频正在b背景中播放,并且我正在从其他 Activity 中禁用设备来停止播放该音频。我已经尝试过多次更改流,但是它仍然不会静音。我也尝试过在 list 中添加许多权限以使其正常运行,但是没有运气...

这是代码,不用担心我的全局变量。 x,它只是一个计数器,用于控制是否调用静音/取消静音:

public void mute(View view) {
mutebutton = (ImageButton) findViewById(R.id.mutebutton);

if ((variableForMute.x % 2) != 0) { //If it's odd UNMUTE
Toast.makeText(Main_Menu.this, "UNMUTED", Toast.LENGTH_SHORT).show();
mAudioManager.setStreamVolume(AudioManager.STREAM_RING, userVolumeOnStart.userVolume, 0);
variableForMute.x++;
Log.v(TAG, variableForMute.x + "UNMUTED");


} else { //If its even MUTE
userVolumeOnStart.userVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_RING);
mAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
// mAudioManager.setRingerMode(0);
Toast.makeText(Main_Menu.this, "MUTED", Toast.LENGTH_SHORT).show();
variableForMute.x++;
Log.v(TAG, variableForMute.x + "MUTED");
}
}

这是 list 的屏幕截图:

enter image description here

非常感谢您为我解决了这个有趣的问题。有趣的是,在尝试了 这么多的不同方式后,问题仍然存在。例如,使用官方的静音方法( audioManager.RINGER_MODE_SILENT),将音量手动设置为零( AudioManager.STREAM_RING, 0, 0),在 list 中添加权限等。您会在我的代码中注意到很多注释,这些注释来自我的其他注释(很多! )我为解决此问题所做的尝试。

注意:
当我使用静音按钮减小音量并将其静音时,音频 会成功使静音,但我的手机顶部通知栏上没有静音图标。否则,使用静音按钮,我会得到静音图标 ,它不会成功静音。

谢谢,让我知道您是否还有其他需要,希望我提供了足够的信息!

最佳答案

MediaPlayer mp = MediaPlayer.create(context,R.raw.sound_file_1);
mp.start();

静音

mp.setVolume(0,0);

&取消静音或全音量

mp.setVolume(1,1);

关于java - 简单的静音问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33603646/

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