如何使用 Cordova 插件?
Posted
技术标签:
【中文标题】如何使用 Cordova 插件?【英文标题】:How do I use Cordova plugins? 【发布时间】:2019-01-11 05:34:12 【问题描述】:Cordova's Battery Status plugin page 上的说明说我只需要运行cordova plugin add cordova-plugin-battery-status
。
当我这样做时,cordova 确实添加了
<plugin name="cordova-plugin-battery-status" spec="^2.0.2" />
到我的 config.xml 文件中
我的插件文件夹中名为 cordova-plugin-battery-status 的目录,
一个同名的 node_modules 文件夹
和 "cordova-plugin-battery-status": "^2.0.2",
作为我的 package.json 中的依赖项
说明建议这个例子:
window.addEventListener("batterystatus", onBatteryStatus, false);
function onBatteryStatus(status)
console.log("Level: " + status.level + " isPlugged: " + status.isPlugged);
...我把它放在我的 Vue 项目的 main.js 文件中进行尝试。
说明说这个插件与浏览器平台兼容。所以我运行了cordova platform add browser
和cordova run browser
,它们启动了应用程序的本地主机实例。但是,插入和拔出计算机无济于事。
当我通过单击按钮触发插件时,出现类型错误:“无法读取未定义的属性‘级别’”
我尝试了其他插件,我的核心非插件 Cordova 功能运行良好,但我无法让 cordova 插件正常工作。
我不使用 Ionic。我正在使用 Vue、OnsenUI、firebase 和 Cordova CLI。
我想我需要在我的 main.js 文件中初始化这个插件和/或编写一个 import/from 语句,但安装说明没有说明这一点。
【问题讨论】:
大胆猜测:虽然从某种意义上说是兼容的,但它不会崩溃,但并不能保证所有设备和平台上的所有浏览器都具有必要的 API 来为您提供该信息。在我看来,这听起来像是你只会在一小部分目标上得到的那种东西。 【参考方案1】:这个页面https://www.npmjs.com/package/cordova-plugin-battery-status说
这个插件提供了旧版本的实现 电池状态事件 API。
在网络上查找电池状态事件 API 的第一个结果是此页面 https://developer.mozilla.org/en-US/docs/Web/API/Battery_Status_API,这就是说
已过时 此功能已过时。虽然它可能在某些情况下仍然有效 浏览器,不鼓励使用它,因为它可以随时删除 时间。尽量避免使用它。
我还发现有一个 phonegap-plugin-battery-status 插件https://github.com/phonegap/phonegap-plugin-battery-status 可能使用较新版本的电池 api https://www.w3.org/TR/battery-status/。
也许您可以尝试删除 cordova-plugin-battery-status 并尝试 phonegap-plugin-battery-status。
【讨论】:
谢谢!是否可以在 Cordova CLI 创建的项目中使用 phonegap 插件?我确实在全球范围内安装了 phonegap cli,我运行了phonegap plugin add phonegap-plugin-battery-status
...但在运行 npm run build
和 cordova build ios --buildFlag='-UseModernBuildSystem=0'
之后,xcode 存档失败,它在安装 phonegap 插件之前工作...以上是关于如何使用 Cordova 插件?的主要内容,如果未能解决你的问题,请参考以下文章