2015-11-05 193 views
0

我试图禁用振动器使用vibrator.cancel()但它不工作。我应该如何禁用它?我曾尝试下面的代码:如何在Android手机中禁用振动器编程

Vibrator vib = (Vibrator) this.getSystemService(Context.VIBRATOR_SERVICE); 
vib.cancel() 
+0

你可以分享你所usnig振动器的情况? – Arslan

+0

'cancel()'用于停止任何现有的振动呼叫。如果你想在系统范围内禁用震动,你需要查看[AudioManager]中的setVibrateSetting()(http://developer.android.com/intl/es/reference/android/media/AudioManager.html) – adelphus

回答

2

我们可以启用和禁用这样

AudioManager vib = (AudioManager) this.getSystemService(Context.VIBRATOR_SERVICE); 

振动器启用静音模式

​​

禁用静音模式

vib..setRingerMode(AudioManager.RINGER_MODE_NORMAL); 

可以帮助你或别人

1

尝试这种方式,,这将有助于

switch (position) { 
    case 0: 
     audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT); 
     break; 
    case 1: 
     audioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); 
     break; 
    case 2: 
     audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 
     audioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, 
       AudioManager.VIBRATE_SETTING_OFF); 
     break; 
    case 3: 
     audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 
     audioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, 
       AudioManager.VIBRATE_SETTING_ON); 
     break; 
    }