java - android 只振动 15 秒

标签 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 的新手,我想知道上面的代码是否有任何问题..

最佳答案

它没有说 in the docs ,但 15 秒可能是振动时间的硬件设置限制。您可能想在不同的设备上对其进行测试,看看它在停止前是变长还是变短。

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

关于java - android 只振动 15 秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8709328/

相关文章:

java - Android语音识别与数组

java - Android 使用多线程更快地下载文件

android - 使用 xml 从 rss 提要中获取数据,然后存储在 ArrayList 中

android - Google Play 游戏服务登录回调

angularjs - 如何使用 Angularjs 将 View 日期绑定(bind)到模型毫秒

java - 根据用户选择显示 xml <array-list> 中的项目

java - 解决源代码依赖关系

java - android无法在自定义对话框中的 ListView 中使用获取所有编辑文本值

C++ 在微秒范围内定期调用函数

c# - 引入 MySQL DATETIME(3) 字段 => .NET DataTable.Load() 现在失败