2015-03-03 2 views
0

Можно ли вибрировать телефон с помощью RINGER_MODE_NORMAL? Если аудиофайл находится в режиме «Кольцо + Нет вибрации».Добавление вибрации вручную при входящем вызове

Если вы можете, пожалуйста, введите подробный код. Заранее спасибо.

+0

Что у вас есть сейчас? – Loko

+0

Вы можете проверить эту ссылку: https://stackoverflow.com/questions/32709260/android-detect-if-the-vibrate-setting-in-the-device-is-on-or-off-esp-for-the -c/45240695 # 45240695 –

ответ

1

Вы можете использовать switch и проверить текущий звонок с помощью getRingerMode и сделать то, что вы хотите дальше; setRingerMode

switch(audio.getRingerMode()){ 
case AudioManager.RINGER_MODE_NORMAL: 
    audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); 
case AudioManager.RINGER_MODE_SILENT: 
    audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); 
case AudioManager.RINGER_MODE_VIBRATE: 
    break; 
} 

Также не забывайте, если вы еще не добавить разрешение в вашем файле манифеста ...

<uses-permission android:name="android.permission.VIBRATE"/> 

UPDATE Вы не можете установить и в то же время, один или другой. Также вы изменили то, что хотели по первому вопросу, когда вы это сделаете, это может сделать вещи более запутанными. Below является больше информации о setRingerMode

enter image description here

+0

Это нормально делать то, что вы хотите, в зависимости от кольца ... – Codexer

+0

@Yolin вы удалили свой комментарий, теперь я выгляжу так, как будто я разговариваю сам с собой;) – Codexer

+0

ха-ха, это происходит ... Я был как то, что вы комментируете после прочтения своего первого комментария: D – shivamDev

1
AudioManager mAudioManager; 

onCreate() { 
    mAudioManager = (AudioManager)getSystemService(AUDIO_SERVICE); 

    // now for setting it in Vibration mode : 
    mAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); 

} 

тис код для установки телефона в режим виброзвонка. Оставайтесь, вы должны проверить текущее состояние и все остальное. для полного кода go here

+1

приятное предложение, не могли бы вы добавить больше в свой ответ, поскольку ссылка имеет тенденцию ** умирать ** в момент времени, а затем сделать его недоступным ... – Codexer

+0

@ 436f6465786572 - Спасибо за предложение, но его ссылка на мой собственный сайт (не продвигая мой сайт в любом случае), в офисе, так что не получайте много времени, чтобы написать весь код как развивающийся env недоступен прямо сейчас. – shivamDev