window.plugins在cordova-2.0.0中未定义



我正试图在BlackBerry设备中使用Cordova的BarcodeScanner插件,但运气不佳。示例代码使用了以下结构:

window.plugins.BarcodeScanner...

而CCD_ 1是CCD_。

我尝试了一个新的应用程序,window.plugins仍然是undefined(我的意思是,没有任何添加的示例应用程序)。

是api已经更改,文档已经过时,还是我缺少了什么?

谢谢!

Cordova 2.0删除了BarcodeScanner插件使用的"addPlugin"方法。因此,一个快速的解决方案是删除(或注释掉)用于添加插件的"addConstructor"函数,并将其替换为窗口对象的显式附件:

//cordova.addConstructor(function() {
//    cordova.addPlugin('barcodeScanner', new BarcodeScanner());
//});
window.barcodeScanner = new BarcodeScanner();

然后,由于不使用"window.plugins",您还需要更改调用"扫描"方法的代码,因此请替换

window.plugins.barcodeScanner.scan(...

带有

window.barcodeScanner.scan(...

我已经用Cordova 2.0测试过了,它是有效的。

刚刚遇到了同样的问题。在查看了窗口对象后,我发现条形码扫描仪就在那里。所以window.BarcodeScanner.prototype.scan(result, error)做到了。确保您等待cordova完全初始化,否则您可能会得到类似has no method exec() 的东西

今天早上,我推出了一款适用于2.0.0版本的新BarcodeScanner。

https://github.com/phonegap/phonegap-plugins/tree/master/Android/BarcodeScanner/2.0.0

最后,我使用了cordova 1.9.0,因为插件还不是最新的。

感谢大家!

最新更新