课程表

Cordova课程

工具箱
速查手册

Cordova 设备方向

当前位置:免费教程 » 移动开发 » Cordova

指南针用于显示相对于地理北基点的方向。

步骤1 - 安装设备定向插件

打开命令提示符窗口并运行以下命令。

  1. C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-device-orientation

步骤2 - 添加按钮

如果你按照我们的最后一个教程,你可能会注意到这个插件类似于加速插件。在本教程中,我们将遵循相同的概念。让我们在 index.html 中创建两个按钮。

  1. <button id = "getOrientation">GET ORIENTATION</button>
  2. <button id = "watchOrientation">WATCH ORIENTATION</button>

步骤3 - 添加事件监听器

现在我们将在 index.js 中的 onDeviceReady 函数中添加事件监听器。

  1. document.getElementById("getOrientation").addEventListener("click", getOrientation);
  2. document.getElementById("watchOrientation").addEventListener("click", watchOrientation);

步骤4 - 创建函数

我们将创建两个函数,一个获取当前加速度,另一个查看方向更改。您可以看到我们正在使用频率选项,因为我们想要每隔三秒观察一次更改。

  1. function getOrientation(){
  2. navigator.compass.getCurrentHeading(compassSuccess, compassError);
  3.  
  4. function compassSuccess(heading) {
  5. alert('Heading: ' + heading.magneticHeading);
  6. };
  7.  
  8. function compassError(error) {
  9. alert('CompassError: ' + error.code);
  10. };
  11. }
  12.  
  13. function watchOrientation(){
  14. var compassOptions = {
  15. frequency: 3000
  16. }
  17.  
  18. var watchID = navigator.compass.watchHeading(compassSuccess, compassError, compassOptions);
  19.  
  20. function compassSuccess(heading) {
  21. alert('Heading: ' + heading.magneticHeading);
  22. setTimeout(function() {
  23. navigator.compass.clearWatch(watchID);
  24. }, 10000);
  25.  
  26. };
  27.  
  28. function compassError(error) {
  29. alert('CompassError: ' + error.code);
  30. };
  31. }

由于指南针插件几乎与加速插件相同,我们将在此时显示错误代码。 某些设备没有磁罗盘工作所需的磁性传感器。 如果您的设备没有它,您会得到以下错误。

Cordova Compass Error
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号