AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
switch (am.getRingerMode()) {
case AudioManager.RINGER_MODE_SILENT:
Log.i("MyApp","Silent mode");
break;
case AudioManager.RINGER_MODE_VIBRATE:
Log.i("MyApp","Vibrate mode");
break;
case AudioManager.RINGER_MODE_NORMAL:
Log.i("MyApp","Normal mode");
break;
}
使用上面的代码,我可以成功找到各种 AudioManager RINGER_MODE* 类型,但是我似乎找不到在状态发生变化时捕获的 EventListener。我正在编写的应用程序在后台运行,所以我想知道检查 AudioManager.RINGER_MODE 状态的最及时方式。