我正在尝试在 BlackBerry 设备中使用 Cordova 的 BarcodeScanner 插件,但没有运气。示例代码使用了这种结构:
window.plugins.BarcodeScanner...
但是window.plugins
是undefined
。
我尝试了一个全新的应用程序并window.plugins
继续使用undefined
(我的意思是,没有任何添加的示例应用程序)。
api是否已更改并且文档已过时或者我缺少什么?
谢谢!
我正在尝试在 BlackBerry 设备中使用 Cordova 的 BarcodeScanner 插件,但没有运气。示例代码使用了这种结构:
window.plugins.BarcodeScanner...
但是window.plugins
是undefined
。
我尝试了一个全新的应用程序并window.plugins
继续使用undefined
(我的意思是,没有任何添加的示例应用程序)。
api是否已更改并且文档已过时或者我缺少什么?
谢谢!
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 对此进行了测试,它可以工作。
刚刚遇到了同样的问题。查看窗口对象后,我发现 BarcodeScanner 就在那里。window.BarcodeScanner.prototype.scan(result, error)
诀窍也是如此。确保你等待科尔多瓦完全初始化,否则你可能会喜欢has no method exec()
所有,我今天早上推了一个新的 BarcodeScanner,它适用于 2.0.0。
https://github.com/phonegap/phonegap-plugins/tree/master/Android/BarcodeScanner/2.0.0
最后,我使用了cordova 1.9.0,因为插件还不是最新的。
谢谢大家!