android振动只持续15秒

时间:2012-01-03 07:53:18

标签: java android milliseconds

我想实施:

我想在指定的分钟内振动手机,我使用EditText获取输入并通过将分钟乘以60000转换为毫秒,然后将其作为参数传递给vibrate(),它应该振动指定的毫秒,但是它振动只有15秒..

我已完成代码:

  Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
  final EditText minutess = (EditText) findViewById(R.id.minutes);
                // to string
                String min = minutess.getText().toString();
                minutess.setVisibility(4);
                stopButton.setVisibility(1);
                try{
                long mins = Long.parseLong(min);
                long milis = mins*60000;
                startButton.setVisibility(4);
                v.vibrate(milis);
                }
       catch (NumberFormatException e) 
            { 
               //something else done here

            }

即使以毫秒为单位的时间传递到vibrate(),它也只会振动15秒。 我是java的新手,我想知道上面代码中是否有任何错误。

1 个答案:

答案 0 :(得分:5)

它没有说in the docs,但15秒可能是振动时间的硬件设定限制。您可能希望在其他设备上对其进行测试,以确定它在停止之前是变长还是变短。

但是如果所有设备只能振动15秒,你可以将所需的时间分成15秒的块,每次都重新振动,直到它停止。