我有一个设备,我不知道它是否有震动器。
有没有一种方法可以查询震动器的可用性?
Vibrator
类就是这样。它的hasVibrator()
方法返回一个布尔值,指示是否支持振动。
hasVibrator()
方法查询Vibrator类。String vs = Context.VIBRATOR_SERVICE;
Vibrator mVibrator = (Vibrator)getSystemService(vs);
boolean isVibrator = mVibrator.hasVibrator();
getSystemService
返回的 Vibrator
是否为 null? - Adam Johns对于API<11,以下内容可能会有所帮助:
Context.getSystemService()
返回一个服务对象或者null
(如果没有服务)。
if ( getSystemService(VIBRATOR_SERVICE) != null ) {
//Vibrator exists
}
在使用hasVibrator()之前,您需要支持(至少)Android 3.0(11 HoneyComb)。
奇怪的是,您可以在任何/所有版本上使用vibrate()本身。
因此,真正的问题是:v1-v10如何检测设备是否具有振动器? (或者如果您尝试在没有振动器的设备上振动,会发生什么不好的事情吗?)
if (window.innerWidth < 600) {
window.navigator.vibrate(300);
}