Windows Phone 8 PhoneGap Barcodescanner

时间:2013-05-11 16:01:42

标签: windows-phone-8 phonegap-plugins barcode-scanner

我一直在尝试将Windows Phone 8与PhoneGap和插件(https://github.com/phonegap/phonegap-plugins/tree/master/WindowsPhone/BarcodeScanner)一起用于BarcodeScanning。但我不知道如何开始。

我在我的index.html中集成了<a href="#" class="btn" onclick="window.plugins.barcodeScanner.scan">Scan Code</a>,但VS2012只告诉我Error:"Unable to get property 'barcodeScanner' of undefined or null reference file:x-wmapp0:www/index.html Line:31"

有人能帮我一把吗?

3 个答案:

答案 0 :(得分:1)

我认为你没有包括cordova.windows-x.x.x.js或barcodescanner.js。

答案 1 :(得分:1)

barcodeScanner.js中存在错误。

在文件的底部显示

Cordova.addConstructor(function() {

将Cordova改为cordova(小写),你很高兴。

接下来,如果您收到错误

Error::Plugin not allowed in config.xml. org.apache.cordova.barcodeScanner

在尝试扫描时,将以下内容添加到项目根目录中的config.xml中:

<plugin name="org.apache.cordova.barcodeScanner"/>

答案 2 :(得分:1)

我不确定这是否是您想要的,但这是我为使其发挥作用所采取的措施:

在项目中添加BarcodeScanner和ZXingVer1_7 dll。

将BarcodeScanner.cs添加到您的项目中。(必须位于项目的根目录)

<plugin name="BarcodeScanner" />添加到config.xml。

将barcodescanner.js添加到“www”目录。

添加<script type="text/javascript" src="../barcodescanner.js"></script>  在你的cordova.js声明之后到你的html页面。 (路径可能会有所不同,具体取决于您放置HTML的位置)

在你的barcodescanner.js中,确保所有“cordova”引用都不是这样写的:“Cordova”

在你的barcodescanner.js中,在开头的行中:“return cordova.exec(...”,将“barcodeScanner”替换为“(你的项目名称).barcodeScanner”

要使用它,只需将其添加到需要条形码扫描的位置:

window.plugins.barcodeScanner.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);
        });