navigator.vibrate 仅适用于超过一秒的振动

问题描述 投票:0回答:1

我正在尝试在 Android 上的基于网络的游戏中获得触觉反馈,但我无法让

navigator.vibrate
正常工作。

更准确地说,

navigator.vibrate(1000)
根本不做任何事情(它只返回
true
),而
navigator.vibrate(1001)
振动一秒钟。高于 1000 的值似乎有效,而较低的值则无效(显然一秒对于触觉反馈来说太长了)。我尝试取消
setTimeout
中的振动,但
navigator.vibrate(0)
似乎也不起作用。

我没有处于静音模式,各种音量滑块都不为零,我已经激活了我能找到的所有与振动相关的设置,并且对

navigator.vibrate
的调用发生在用户交互时。我在 Google 或此处找不到任何可以解释此行为的信息。有谁知道出了什么问题以及如何/是否可以修复它?

android vibration
1个回答
0
投票

您可以尝试使用振动模式而不是单一持续时间,例如

navigator.vibrate([500, 100, 500]); // Vibrate for 500ms, pause for 100ms, then vibrate for 500ms

如果 navigator.vibrate(0) 无法停止振动,您可以尝试使用 navigator.vibrate([]) 或 navigator.vibrate([0]) 作为解决方法。

© www.soinside.com 2019 - 2024. All rights reserved.