如何在phonegap应用程序中要求插件

时间:2015-08-08 09:10:59

标签: cordova phonegap-plugins

我试图制作this插件工作的phonegap barcode scanner示例。我已替换www文件夹中的所有文件,并且我还使用CLI命令安装了该插件

phonegap plugin add phonegap-plugin-barcodescanner

但按下扫描按钮,只有index.js第55行中的console.log('scanning')命令有效。我的问题是:

  1. index.js第57行的要求中的cordova是否指向项目的根目录(因为我没有这样的文件夹)?

    var scanner = cordova.require("cordova/plugin/BarcodeScanner");

  2. barcodescanner.js文件是否会自动发送(因为它不是示例仓库,我可以在插件目录中看到它)?

  3. 通过CLI安装后,行

    <gap:plugin name="com.phonegap.plugins.barcodescanner"/>

  4. 不在config.xml。我需要手动添加吗?

2 个答案:

答案 0 :(得分:2)

您可以通过以下方式安装插件:

1 - 添加&#34; phonegap-plugin-barcodescanner &#34;在你的gruntFile插件列表中

2 - cd phonegap目录并运行&#34; sudo phonegap插件添加phonegap-plugin-barcodescanner &#34;。

之后你应该可以使用cordova.plugins.barcodeScanner.scan(成功,失败);

在这种情况下,您不需要手动更改任何内容,这将自动完成。

希望这能帮到你!

干杯,

答案 1 :(得分:2)

我不知道此示例是否正常工作,因为存储库中未提供完整项目的所有文件。我更愿意提供更多细节,以完全涵盖这个问题。

让我们检查一下你需要注意安装插件的几点:

  1. 在安装插件之前添加平台
  2. 提供使用CLI安装插件
  3. 插件通常仅作为已安装的应用在真实设备上运行,而不是在您的浏览器或Phonegap扫描仪上。
  4. 您不需要向config.xml添加任何代码行,而cordova将在platforms/{os}文件夹(第3个问题)中的配置中添加。
  5. 某些插件不需要任何进一步的手动文件传输和将脚本链接到HTML页面,但有些需要。 barcodeScanner是其中一个需要:

    1. 请勿将barcodescanner.js链接到index.html文件Cordova自动执行(第1个问题)

    2. 每个插件都有一个plugin.xml文件。通过它查看,js-module元素至少有一个clobbers元素。此元素具有target属性,该属性指示将在全局可用的全局模块。在这种情况下,通过生成调试apk或api文件来检查cordova.plugins.barcodeScanner是否可用

    3. 通常,您不需要在自己的代码中创建需求,因为构建过程会将插件包装在cordova.require闭包中。关于这个插件,只需使用:

      cordova.plugins.barcodeScanner.scan(function (result) {}, function (error) {});