Попытка обнаружения вибрации и звонка одновременно с использованием кода, который не работает. Settings.System.VIBRATE_WHEN_RINGING не работает и всегда возвращает 0.
AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int mode = am.getRingerMode();
switch (mode)
{
case AudioManager.RINGER_MODE_NORMAL:
if ((1 == Settings.System.getInt(getContentResolver(), Settings.System.VIBRATE_WHEN_RINGING, 0))) {
// code here
Toast.makeText(getApplicationContext(), "=== ring + vibrate mode ===", Toast.LENGTH_LONG).show();
} else {
// code here
Toast.makeText(getApplicationContext(), "=== ring + no vibrate mode ===", Toast.LENGTH_LONG).show();
}
break;
case AudioManager.RINGER_MODE_SILENT:
Toast.makeText(getApplicationContext(), "=== in silent mode ===", Toast.LENGTH_LONG).show();
break;
case AudioManager.RINGER_MODE_VIBRATE:
Toast.makeText(getApplicationContext(), "=== in vibrate mode ===", Toast.LENGTH_LONG).show();
break;
}
Заранее спасибо:)