2012-07-06 105 views
0

我正在開發phonegap android應用程序。這對我來說是全新的。我想用條形碼掃描儀開發應用程序。它也可能使用意圖呼叫。這意味着從java代碼調用條形碼意圖,並且一旦結果掃描應該顯示在HTML頁面中。使用phonegap插件而不使用條形碼庫的條形碼掃描儀?

+0

你有沒有試過下面的解決方案? – dhaval 2012-07-09 11:46:22

+0

@dhaval:非常感謝你,今天只有我試過了,得到了答案.. – Thiru 2012-07-11 08:42:52

回答

2

從PhoneGap的插件,此代碼按預期工作:

public PluginResult execute(String arg0, JSONArray arg1, String arg2) { 
     Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
     intent.setPackage("com.google.zxing.client.android"); 
    // intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); 
     ctx.startActivityForResult(this, intent, 0); 

     return new PluginResult(PluginResult.Status.OK); 
    } 

    public void onActivityResult(int requestCode, int resultCode, Intent intent) { 
     if (requestCode == 0) { 
      Log.i("Cordova", "result " + resultCode); 
      if (resultCode == Activity.RESULT_OK) { 
       String contents = intent.getStringExtra("SCAN_RESULT"); 
       String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); 

       Log.i("Cordova", "contents " + contents + ", format " + format); 
       // Handle successful scan 
      } else if (resultCode == Activity.RESULT_CANCELED) { 
       // Handle cancel 
       Log.i("Cordova", "scan cancelled"); 
      } 
     } 
    } 

測試與科爾多瓦1.7和Android 2.2的

1

只要去to,並按照自述文件中的說明。

添加以下內容到項目後,您可以使用類似

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); 
    } 
); 

做掃描。