【问题标题】:Detect if phone vibrates on device physical/software Keys检测手机是否在设备物理/软件按键上振动
【发布时间】:2017-07-12 02:12:52
【问题描述】:

在您的应用中的某些情况下,您只想让手机在以下情况下振动 您的应用程序中的某个按钮已被单击,在我的情况下,有一个搜索模式,切换到该模式或从该模式切换将使手机振动,如果按下“返回”键,并且如果用户启用了这种情况,也会发生这种情况设置中软件键的振动,然后会有 2 次快速振动,它并不酷,我想知道是否有任何方法可以检测到这个原因我不能简单地禁用它,因为在某些手机中它可能被禁用或者关键是软件所以根本不会有任何振动 谢谢

【问题讨论】:

  • 您想检测振动吗?
  • @JasonBourne 是的,这就是我想要的,任何振动不仅仅是我创造的..

标签: android setting vibration


【解决方案1】:

不幸的是,没有事件处理振动的侦听器。看到这个question

即使是加速度计或摇动听众,您也无能为力。它太弱而无法检测到。 如果有帮助,请参阅documentation

【讨论】:

  • 不幸的是,这些没有帮助,只是在振动器对象上使用了方法 cancel() 并无法解决它,还尝试通过摇动侦听器检测它并且再次没有结果,并且方法在您提到的其他问题只是检测到我的应用程序创建的振动,所以我想没有办法做到这一点
  • 是的,实际上没有办法。如果找到,请告诉我
【解决方案2】:

使用以下代码进行振动:

Vibrator v1 = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
v1.vibrate(500);

在 android manifest 中添加权限:

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

【讨论】:

  • 问题是如何检测振动,而不是产生振动
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-11
  • 2022-09-30
  • 2013-03-12
  • 2020-12-21
  • 2016-12-29
相关资源
最近更新 更多