0

Qrcode リーダーが必要な phonegap プロジェクト用に、barcodescanner.jsサンプルを試しました。提供されているサンプル プロジェクトは xcode で正常に動作します。独立したプロジェクトを開発しようとすると、問題が発生します。

  • 私のconfig.xmlには次のものがあります:

<plugin name="com.cordova.barcodeScanner" value="CDVBarcodeScanner" />

  • 使用しています: phonegap 2.7.0
  • 私はbarcodescanner.jsそのタグを適切に含めました。

私のコード:

function onDeviceReady()
                {
                    // do your thing!
                    navigator.notification.alert("PhoneGap is working");

                    scanButton = document.getElementById("scan-button");
                    resultSpan = document.getElementById("scan-result");

                    scanButton.addEventListener("click", clickScan, false);
                    createButton.addEventListener("click", clickCreate, false);

                }
                  function clickScan() {
                      alert("clickScan");
                    window.plugins.barcodeScanner.scan(scannerSuccess, scannerFailure);
                }


                function scannerSuccess(result) {
                    console.log("scannerSuccess: result: " + result)
                    resultSpan.innerText = "success: " + JSON.stringify(result)
                }

                function scannerFailure(message) {
                    console.log("scannerFailure: message: " + message)
                    resultSpan.innerText = "failure: " + JSON.stringify(message)
                }

アラートまでは問題ありません。"クリックスキャン",

その後、何も起こりません(私の window.plugins.barcodeScanner.scan(scannerSuccess, scannerFailure);仕事を妨げるもの)。

これは私のプロジェクトがどのように見えるかです--> ここに画像の説明を入力

私はこれに2日間苦労しており、SOの「バーコードスキャナー」タグに関するほとんどすべての質問をチェックしましたが、問題が解決しませんでした。助けが必要です..ありがとう.

4

1 に答える 1

1

config.xml には次のものがあります。

<plugin name="com.cordova.barcodeScanner" value="CDVBarcodeScanner" />

しかし、質問にリンクされているzipアーカイブのbarcodescanner.jsでは、次のように呼び出されます。

Cordova.exec(successWrapper, fail, "org.apache.cordova.barcodeScanner", "scan", options);

config.xml の行を次のように変更してみてください。

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

さらに調査した結果、サンプル .zip のバーコードスキャナー.js が古いバージョンの Phonegap 用に記述されており、2.7 と互換性がないことが判明しました。これは、私が 2.7 と 2.9 で使用するバージョン<plugin name="BarcodeScanner" value="CDVBarcodeScanner" />で、config.xml で必要であり、次のように呼び出すことができます。

var scanner = cordova.require("cordova/plugin/barcodescanner"); 
scanner.scan(scannerSuccess, scannerFailure);
于 2013-10-25T12:07:51.507 に答える