【问题标题】:Adding vibration manually with incoming call来电时手动添加振动
【发布时间】:2015-03-03 14:48:50
【问题描述】:

是否可以使用 RINGER_MODE_NORMAL 振动手机?如果音频配置文件处于“响铃 + 无振动”模式。

如果可以,请提供详细代码。提前致谢。

【问题讨论】:

标签: android vibration


【解决方案1】:
AudioManager mAudioManager;

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

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

}

tis 是将手机设置为振动模式的代码。休息一下,您必须检查当前状态和所有内容。完整代码请前往here

【讨论】:

  • 不错的建议,您能否在答案中添加更多内容,因为链接有时会死亡,然后使其不可用...
  • @436f6465786572 - 感谢您的建议,但它是我自己的网站链接(无论如何都不宣传我的网站),在办公室所以没有太多时间编写所有代码,因为开发环境现在不可用.
【解决方案2】:

您可以使用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"/>

更新 您不能同时设置两者,一个或另一个。此外,您根据原始问题更改了您想要的内容,当您这样做时,它会使事情变得更加混乱。 Below 是关于 setRingerMode 的更多信息

【讨论】:

  • @Yolin 你删除了你的评论,现在我看起来像是在自言自语;)
  • 哈哈它发生了......我就像你在阅读你的第一条评论后评论的那样:D
  • 'case AudioManager.RINGER_MODE_NORMAL: audio.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);'没事。但在那之后铃声就消失了。那不是我的意思。我需要振铃器+振动器。
  • @436f6465786572 - 是的,在阅读您的第二条评论后得到了这一点
  • @436f6465786572 - 没问题,伙计......只是想帮助越来越多的人......它也会提高我自己的技能......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多