实际上在网络或stackoverflow上我找不到我需要的东西,也许我没有在谷歌搜索真正的关键字所以我找不到我的解决方案。 我播放声音( .mp3 ),它运行正常。 代码在这里:
try {
MediaPlayer mPlayer = MediaPlayer.create(context, R.raw.bell);
mPlayer.start();
} catch (Exception e) {
// TODO: handle exception
}
我的问题是,当我的手机声音关闭或振动时,此代码会运行,我会听到声音。我怎么能检测到手机声音没有打开所以我可以停止播放器, 提前致谢
答案 0 :(得分:2)
您可以使用AudioManager.getStreamVolume http://developer.android.com/reference/android/media/AudioManager.html#getStreamVolume%28int%29获取媒体播放器流的当前音量(请参阅STREAM_MUSIC http://developer.android.com/reference/android/media/AudioManager.html#STREAM_MUSIC),并使用AudioManager.setStreamVolume http://developer.android.com/reference/android/media/AudioManager.html#setStreamVolume%28int,%20int,%20int%29进行设置。
您可以使用AudioManager:
使用以下代码段AudioManager am =
(AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setStreamVolume(
AudioManager.STREAM_MUSIC,
am.getStreamMaxVolume(AudioManager.STREAM_MUSIC),
0);