Мне нужно получить правильные настройки для вибратора, чтобы мое приложение учитывало настройки звука устройства. В следующем коде, если вибратор выключен (на моем телефоне, когда я уменьшаю громкость, это состояние, когда громкость выключена, а вибратор выключен, и одна, когда громкость выключена, вибратор включен). Когда телефон не вибрирует (проверяется звонком на это устройство), я по-прежнему включаю вибратор:
AudioManager audioManager = (AudioManager) PingerApplication.getInstance().getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
int vibrationSetting = audioManager.getVibrateSetting(AudioManager.VIBRATE_TYPE_NOTIFICATION);
boolean vibrate;
switch(vibrationSetting) {
case AudioManager.VIBRATE_SETTING_ON:
vibrate = true;
break;
case AudioManager.VIBRATE_SETTING_OFF:
vibrate = false;
break;
case AudioManager.VIBRATE_SETTING_ONLY_SILENT:
vibrate = (audioManager.getRingerMode() == AudioManager.RINGER_MODE_VIBRATE);
break;
default:
vibrate = false;
}
Я что-то не так делаю? Установка вибрации всегда AudioManager.VIBRATE_SETTING_ON