无法安装 Cordova 插件条形码 Phonegap (mac)
Posted
技术标签:
【中文标题】无法安装 Cordova 插件条形码 Phonegap (mac)【英文标题】:Unable to install Cordova plugin barcode Phonegap (mac) 【发布时间】:2018-04-23 19:47:55 【问题描述】:我对 cordova 和 phonegap 非常陌生。我需要安装 Cordova 插件barcodescanner,我尝试通过终端(mac)使用以下行来安装:
cordova plugin add cordova-plugin-barcodescanner
在此document 中指定。
但是,我收到了一个我无法解决的错误。我已经阅读了许多其他帖子,但没有找到适合我的情况的解决方案。
我的错误:
(node:1721) UnhandledPromiseRejectionWarning: CordovaError: Cannot
find plugin.xml for plugin "cordova-plugin-barcodescanner". Please
try adding it again.
at new PluginInfo
(/usr/local/lib/node_modules/cordova/node_modules/cordova-
common/src/PluginInfo/PluginInfo.js:367:15)
at PluginInfoProvider.get
(/usr/local/lib/node_modules/cordova/node_modules/cordova-
common/src/PluginInfo/PluginInfoProvider.js:35:32)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/src/plugman/fetch.js:177:51
at _fulfilled
(/usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/node_modules/q/q.js:787:54)
at self.promiseDispatch.done
(/usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch
(/usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/node_modules/q/q.js:749:13)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/node_modules/q/q.js:509:49
at flush (/usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/node_modules/q/q.js:108:17)
at _combinedTickCallback (internal/process/next_tick.js:131:7)
at process._tickCallback (internal/process/next_tick.js:180:9)
(node:1721) UnhandledPromiseRejectionWarning: Unhandled promise
rejection. This error originated either by throwing inside of an
async function without a catch block, or by rejecting a promise
which
was not handled with .catch(). (rejection id: 1)
(node:1721) [DEP0018] DeprecationWarning: Unhandled promise
rejections
are deprecated. In the future, promise rejections that are not
handled
will terminate the Node.js process with a non-zero exit code.
这些是我的规格: ios:10.13.4 音差:0.4.5
谢谢! :)
【问题讨论】:
【参考方案1】:-
https://github.com/hypery2k/cordova-barcodescanner-plugin 尝试使用完整的 url 来安装插件。
或
2. 将<plugin name="cordova-plugin-barcodescanner" spec="0.7.4" />
设置为config.xml 并尝试使用您的cmd 运行cordova plugin add cordova-plugin-barcodescanner
。
如果它不起作用,请尝试运行命令npm install cordova-plugin-barcodescanner
。 (如果您的命令已经将一些文件添加到插件文件夹,请将其删除并再次运行。)
检查您尝试安装插件的路径,它必须类似于 C:/Desktop/Application/www/plugin/
确保你的 config.xml 有:
<config-file target="androidManifest.xml" parent="/*" mode="merge">
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
</config-file>
【讨论】:
你好证明!非常感谢你的帮助。不幸的是,以上都不起作用:( 当我尝试第一个选项时,我收到一条错误消息:“UnhandledPromiseRejectionWarning: CordovaError: Failed to fetch plugin github.com/hypery2k/cordova-barcodescanner-plugin via registry。这可能是连接问题,或者插件规范不正确。 "加上许多其他行。事实上,我的 confi.xml 没有那一行。我添加了它然后运行,我得到了这个错误:“UnhandledPromiseRejectionWarning: CordovaError: Failed to fetch plugin cordova-plugin-barcodescanner@0.7.4 via registry. 这可能是连接问题,或者插件规范不正确。”跨度> 路径正确,我在插件文件夹中。我还添加了我也没有的配置文件目标,但它仍然无法正常工作。还有其他想法吗? 尝试re-adding平台android 在重新添加平台android之前,找到路径\plugins\phonegap-plugin-barcodescanner\plugin.xml,如果它在那里,打开plugin.xml并删除行<uses-feature android:name="android.hardware.camera">
【参考方案2】:
好的,经过很多天的试验,我想通了。 基本上我所做的是使用 CLI 从头开始创建一个新项目。然后我一步一步跟着this documentation。当我进入“插件”部分时,我用以下行添加了我想要的插件:
cordova plugin add cordova-plugin-barcodescanner
希望这对其他人有所帮助。 干杯!
【讨论】:
以上是关于无法安装 Cordova 插件条形码 Phonegap (mac)的主要内容,如果未能解决你的问题,请参考以下文章
Onsen 2 - Monaca CLI - Cordova 插件 BarcodeScanner