【问题标题】:Angular6 + Cordova : cordova is not loadedAngular6 + Cordova:未加载cordova
【发布时间】:2018-05-16 15:32:57
【问题描述】:

我知道这是一个常见问题,但找到的所有解决方法都是“在 index.html 中包含 cordova.js”或“将 href="." 更改为 href="./""

我认为 cordova API 未加载到应用程序中,因为未调用 deviceready 回调。 但我仍然可以运行该应用程序(但使用 navigor.mediadevices 的组件不起作用)。

index.html

<base href="./">
<script src=”cordova.js”></script>
<script>
window.isready = false;
function ready(){
    alert('test');
    console.log('test');
    window.isready = true; // this is always false
}
document.addEventListener('deviceready', ready, false);
</script>

该事件永远不会触发

我如何安装 cordova 和构建应用程序

npm install -g cordova
cordova create cordova
cd cordova && cordova platforms add android
rm -rf cordova/www/*
ng build --prod --aot --output-path=cordova/www
cd cordova && cordova build android

cordova 的 package.json

... 
"dependencies": {
    "cordova-android": "^7.0.0",
    "cordova-plugin-device": "^2.0.2",
    "cordova-plugin-file": "^6.0.1",
    "cordova-plugin-media-capture": "^3.0.2",
    "cordova-plugin-whitelist": "^1.3.3"
},
"cordova": {
    "plugins": {
        "cordova-plugin-whitelist": {},
        "cordova-plugin-media-capture": {},
        "cordova-plugin-device": {}
    },
    "platforms": [
        "android"
    ]
}

【问题讨论】:

  • 您是在设备上还是在网络浏览器中运行它?
  • 我在安卓设备上运行。我的目标是为网络应用程序和移动应用程序共享相同的代码。 PWA 是一个很好的解决方法,但我们需要应用在 Play Store 和 Apple Store 上。

标签: angular cordova


【解决方案1】:

deviceready 事件处理程序的设置是正确的。问题似乎是您包含cordova.js。以下是您应该解决的问题:

  1. 在上面的代码示例中,您使用倾斜的双引号而不是普通的双引号包含了 cordova.js

尝试改变这个:

&lt;script src=”cordova.js”&gt;&lt;/script&gt;

到这里:

&lt;script src="cordova.js"&gt;&lt;/script&gt;

  1. 在您的 Android 设备上运行该应用程序,通过 USB 将您的设备连接到您的计算机,在您的设备上启用开发人员模式调试,然后打开 chrome://inspect 以在应用程序运行时对其进行实时检查。确保 cordova.js 确实存在并且在应用启动时成功加载。

  2. 包含cordova.js 的顺序可能会有所不同。您可能需要将&lt;script src="cordova.js"&gt;&lt;/script&gt; 移动到设置deviceready 事件处理程序的&lt;script&gt; 块下方。

【讨论】:

  • 哇,我以前怎么看不到它...这是您从互联网复制/粘贴代码时出现的问题...非常感谢,这解决了我的问题。
  • 没问题!有时只需要第二双眼睛就能发现错字。
猜你喜欢
  • 1970-01-01
  • 2014-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-29
  • 1970-01-01
相关资源
最近更新 更多