0

我想扫描按钮单击上的二维码,问题是当我在设备上运行代码时,活动结果意图变量总是返回 0。

我如何知道条形码阅读器是否工作?我目前在设备的屏幕上看到黄点。

这是我的代码:

private OnClickListener scanner = new OnClickListener() {
    public void onClick(View v) {
        IntentIntegrator.initiateScan(BarCodeScannerActivity.this);
    }
}; 

protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
     IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
     if (scanResult != null) {
           // handle scan result
           String s = "http://www.google.com/search?q=";
           s += scanResult.getContents();

           Intent myIntent1 = new Intent(Intent.ACTION_VIEW, Uri.parse(s));
           startActivity(myIntent1);
     }

谢谢

4

1 回答 1

2

你的代码有错误

你应该有

@Override
  public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
    if (result != null) {
      String contents = result.getContents();
      if (contents != null) {
        showDialog(R.string.result_succeeded, result.toString());
      } else {
        showDialog(R.string.result_failed, getString(R.string.result_failed_why));
      }
    }
  }

您没有覆盖onActivityResult类似onCreateonStart

而是像普通方法一样编写 onActivityResult ,这是最常见的错误。

另外,如果您可以提及integrator.initiateScan(IntentIntegrator.QR_CODE_TYPES);,或者integrator.initiateScan(IntentIntegrator.PRODUCT_CODE_TYPES);它会很棒。

于 2012-06-28T11:08:48.787 回答