11

我正在尝试在 BlackBerry 设备中使用 Cordova 的 BarcodeScanner 插件,但没有运气。示例代码使用了这种结构:

window.plugins.BarcodeScanner...

但是window.pluginsundefined

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

api是否已更改并且文档已过时或者我缺少什么?

谢谢!

4

4 回答 4

8

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

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

window.barcodeScanner = new BarcodeScanner();

然后,由于没有使用“window.plugins”,您还需要更改调用“scan”方法的代码,因此替换

window.plugins.barcodeScanner.scan(...

window.barcodeScanner.scan(...

我已经用 Cordova 2.0 对此进行了测试,它可以工作。

于 2012-07-23T22:48:10.073 回答
3

刚刚遇到了同样的问题。查看窗口对象后,我发现 BarcodeScanner 就在那里。window.BarcodeScanner.prototype.scan(result, error)诀窍也是如此。确保你等待科尔多瓦完全初始化,否则你可能会喜欢has no method exec()

于 2012-07-23T15:27:06.390 回答
2

所有,我今天早上推了一个新的 BarcodeScanner,它适用于 2.0.0。

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

于 2012-07-24T18:26:40.887 回答
0

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

谢谢大家!

于 2012-07-23T23:08:51.590 回答