我写了一个支持phonegap的Android应用程序需要加速度计。 在一开始它工作得很好,然后»有点突然«它停止工作和navigator.accelerometer变得不确定。我想谷歌研究后认为这是一个许可问题。 在我的/config.xml中,我添加了标记
<plugin name="Accelerometer" value="org.apache.cordova.AccelListener" />
和
<gap:plugin name="org.apache.cordova.device" />
<gap:plugin name="org.apache.cordova.device-motion" />
我正在使用在线phonegap构建服务。
答案 0 :(得分:2)
您必须在manifest.xml文件上写入权限:
<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true" />
答案 1 :(得分:0)
添加插件时遇到类似问题。出于某种原因,当我添加另一个插件时,所有其他插件都停止工作。我没有完全缩小这种情况发生的时间,但如果我在构建平台后尝试添加插件,有时会发生这种情况。
对我来说有用的是创建一个全新的cordova应用程序,再次添加所有插件并复制到我的www目录。
答案 2 :(得分:0)
我找到了解决问题的方法。看起来问题是我在onSuccess回调中多次使用了accelerometer参数。 现在我补充道:
x = acceleration.x;
y = acceleration.y;
z = acceleration.z;
在函数中我使用x,y和z而不是acceleration.x ...
我不知道为什么这可能是一个问题,但它有效:)