如何让Android手机在摇晃时振动?
Posted
技术标签:
【中文标题】如何让Android手机在摇晃时振动?【英文标题】:How I can get an Android phone to vibrate while shaking it? 【发布时间】:2014-08-29 18:26:56 【问题描述】:我只是好奇我的应用程序是否会以这种方式在手机震动时使其振动:
if(event.values[0] > 1.0)
vibrator.vibrate(500);
else
if(event.values[1] > 1.0)
vibrator.vibrate(500);
我正在做的是 SensorEventListener
和我并结合 2 个听众。
这样做会成功吗?由于我没有 android 手机,我无法对其进行测试,所以我询问(编程方面)这是否可能。
【问题讨论】:
【参考方案1】:是的,它会这样工作。只需确保在手机振动的 500 毫秒内停止处理传感器事件即可。
boolean isVibrating = false;
Handler handler = new Handler(Looper.getMainLooper());
if(!isVibrating)
if(event.values[0] > 1.0)
vibrate(500);
else if(event.values[1] > 1.0)
vibrate(500);
void vibrate(long time)
isVibrating = true;
vibrator.vibrate(time);
handler.postDelayed(new Runnable()
public void run()
isVibrating = false;
,
time)
【讨论】:
感谢您的回答。对于停止处理部分:我应该使用哪种方法?取消()? 我认为您无需停止监听传感器。只需切换一个标志并将代码包装在if
中。
我已经用示例代码更新了答案。我没有测试它,所以它可能有语法错误,但我希望你明白。以上是关于如何让Android手机在摇晃时振动?的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio手机来指定短信就发出震动和铃声?如何编程?