当我尝试navigator.vibrate()
时,我会收到
TypeError:Object#<导航器>没有方法'振动'
我正在使用phonegap cli 8.0.0,为Android构建。 我的config.xml:
< plugin source="npm" spec="~3.0.1" name="cordova-plugin-vibration" / >
尝试:
< feature name="http://api.phonegap.com/1.0/vibration" / >
同样的结果。
答案 0 :(得分:0)
如果你打开cordova-plugin-vibration \ README.md,你会看到:
Android webview(API级别19及以上版本)原生支持W3C Vibration API因此,此插件的Android特定实现已被删除。
这就是为什么你在APK文件中没有看到这个插件的原因。
如果您选中https://developer.mozilla.org/en-US/docs/Web/API/Navigator/vibrate,则会在Chrome v32中看到振动API。
此页面https://developer.chrome.com/multidevice/webview/overview表示Android 4.4(KitKat)随Chrome for Android版本30附带。随Android 4.4.3附带的更新后的WebView版本号为33.0.0.0。
因此,在低于4.4.3的Android版本上,您将没有振动API并且会收到此错误“TypeError:Object#&lt; Navigator&gt;没有方法'振动'”
你没有提到Android版本,但我想你应该有4.4到4.4.2。
怎么做
我建议使用cordova-plugin-vibration版本2. *它们不依赖于浏览器中的Vibration API。
例如,在项目文件夹中运行:
cordova plugin add cordova-plugin-vibration@2.1.6 --save