我已经尝试了几个小时,取得了一些进展,但不是正确的方向。
我已经成功地设置了一个Android Cordova项目,它可以加载到手机上并正常运行。但是我无法让条码扫描器插件在Cordova 3.1中工作。我相信它已经正确安装,但它没有出现在config.xml中,但它出现在cordova_plugins.js文件中。
我在我的index.js文件中有这个:
function clickScan() {
var scanner = cordova.require("com.phonegap.plugins.barcodescanner.BarcodeScanner");
scanner.scan(
function (result) {
alert("We got a barcode\n" +
"Result: " + result.text + "\n" +
"Format: " + result.format + "\n" +
"Cancelled: " + result.cancelled);
},
function (error) {
alert("Scanning failed: " + error);
}
);
}
现在当我按下扫描按钮时,它似乎运行了这段代码,但直接跳转到成功函数并显示一个空结果的警示框。
我正在使用通过cordova插件添加的扫描仪https://github.com/wildabeast/BarcodeScanner。
我目前没有将barcodescanner.js文件导入到HTML中,因为在3+中这似乎是由cordova_plugins.js文件处理的,而我之前的版本已经导入过了。 更新: 就我所知,在上述配置中,在Eclipse中没有弹出任何明显的错误。
var scanner = window.cordova.require("cordova/plugin/BarcodeScanner");scanner.scan(function (result) {}, function (error) {});
转换为简单的window.plugins.barcodeScanner
,最终变成了cordova.plugins.barcodeScanner
。 - netalex