4

これを数時間試してみて、少し進歩しましたが、正しい方向には進んでいません.

電話にロードして正常に動作する 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です

これは3+で異なる方法で処理され、cordova_plugins.jsファイルで定義されているようです.

更新: 上記の構成で私が認識している限り、Eclipse に明白なエラー ポップアップはないようです。

4

1 に答える 1

5

はい、index.html にプラグイン固有の JavaScript ファイルをインポートする必要はありません。YourProject/res/config.xml ファイルに次のエントリがあることを確認して、プラグインがプロジェクトに正しくインストールされていることを確認します。

<feature name="BarcodeScanner">
    <param name="android-package" value="com.phonegap.plugins.barcodescanner.BarcodeScanner" />
</feature>

プラグインを使用するには、プラグイン関数を呼び出す更新された構文を使用するだけです -

function clickScan() {
cordova.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);
  });}
于 2013-11-14T13:24:56.470 に答える