我尝试使用插件@ionic-native/vibration
并尝试了三种方式
navigator.vibrate(0);
(<any>window).vibration.vibrate(0);
和
import { Vibration } from '@ionic-native/vibration';
constructor(private vibration: Vibration){
this.vibration.vibrate(0);
}
还添加到应用模块
但是它不起作用,还有其他方法可以将振动设置为0或关闭振动。
据我所知,当前无法完全关闭其他组件将发送的振动。
但是,在某些情况下,使用vibrate(0)
像您一样,在某些情况下禁用某些振动可能会有一个技巧。vibrate
上的文档读取
[...]通过0立即停止任何振动。
因此,您不能完全关闭传入的振动,但是您可以取消任何当前振动。因此,例如,如果要取消发送通知的振动,则可以在到达时致电vibrate(0)
。
it 是一个糟糕的解决方法,因为您可能需要多次调用它以取消振动(请确保您在振动开始后调用此),但是我认为这是唯一接近您只使用离子实现目标的解决方案。
,或者您也可以定期且经常致电vibrate(0)
取消任何传入振动,但它会不推荐,因为要有效,延迟必须是超短的,这可能是一个坏主意出于绩效原因。我只是说这是紧急解决方案。