我使用SimpleExoPlayer制作了Media Android TV应用程序,
它可以播放一些音乐,一些视频
我想通过使用远程触发器来在静音或取消静音时跟踪用户。
因此,我想在当前的电视设备上检测“静音|取消静音”模式。
我研究了许多pages,但仍然没有发现,
希望有人可以帮助我,
谢谢
p / s:Android TV未检测到这些代码
You can use AudioManager to check volume is mute or not mute.
AudioManager audio = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
switch( audio.getRingerMode() ){
case AudioManager.RINGER_MODE_NORMAL:
break;
case AudioManager.RINGER_MODE_SILENT:
break;
case AudioManager.RINGER_MODE_VIBRATE:
break;
}
答案 0 :(得分:0)
目前,我只能通过这种方式来检测Android系统的静音|取消静音。
public static boolean isSoundOn(Context context) {
AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
/*
* It can detect
* - from Android 6.0 : Check Stream Music
* */
boolean isSoundOn = false;
if (NlbUtil.isAndroidMarshmallow()) {
// from Android 6.0 : Stream Music
isSoundOn = am.getStreamVolume(AudioManager.STREAM_MUSIC) != 0; // If no sound system, return true
// isSoundOn = !am.isStreamMute(AudioManager.STREAM_MUSIC);
}
return isSoundOn;
}