【问题标题】:Android app implement barcode scannerAndroid 应用实现条码扫描器
【发布时间】:2015-12-08 15:36:46
【问题描述】:

我想在我的应用中实现条码扫描功能。

我找到了这个tutorial

问题是,我使用的是 Android studio 而不是 eclipse。 如果我理解本教程,我可以在我的应用程序中使用 zxing 的扫描功能,而无需安装第三个应用程序。

谁能向我解释如何在我的应用中使用此功能?

【问题讨论】:

  • 你真正的问题是什么?
  • 第二步:导入 ZXing Android 项目 您需要在 Eclipse 中导入 ZXing Android 项目。导入后,右键单击 Project –> Properties –> Android 并勾选 Is Library 复选框。此外,在项目中创建一个名为 libs 的新文件夹并添加 core.jar 文件。 core.jar 可以从这里下载。我如何使用 android studio 进行此导入?
  • 那么您的问题是如何将库导入android studio或如何使用zxing库进行编码?
  • @Krzysztof Cichocki:是的

标签: java android barcode-scanner


【解决方案1】:

我想建议你另一种方式。下载这个项目并添加BarCodeScanner

要在任何点击事件上打开条形码扫描仪,请调用此捕获活动表单意图,如下所示:

Intent intent = new Intent(MainActivity.this, CaptureActivity.class);
            startActivityForResult(intent, 2);

OnActivityResult()

onActivityResult(requestCode, resultCode, data);

    if (data != null) {
        if (requestCode == 2) {
            if (data.getParcelableExtra("BitmapImage") != null) {
                img.setVisibility(View.VISIBLE);
                img.setImageBitmap((Bitmap) data
                        .getParcelableExtra("BitmapImage"));
            }

            if (data.getStringExtra("BarcodeFormate") != null
                    && !TextUtils.isEmpty(data
                    .getStringExtra("BarcodeFormate"))) {
                bBarcodeFormate.setVisibility(View.VISIBLE);
                bBarcodeFormate.setText("Barcode Formats " + data
                        .getStringExtra("BarcodeFormate"));
            }

            if (data.getStringExtra("Type") != null
                    && !TextUtils.isEmpty(data.getStringExtra("Type"))) {
                bType.setVisibility(View.VISIBLE);
                bType.setText("Type " + data.getStringExtra("Type"));
            }

            if (data.getStringExtra("DateFormate") != null
                    && !TextUtils.isEmpty(data
                    .getStringExtra("DateFormate"))) {
                bDateFormate.setVisibility(View.VISIBLE);
                bDateFormate.setText("Date Formate " + data.getStringExtra("DateFormate"));
            }

            if (data.getStringExtra("MetaData") != null
                    && !TextUtils.isEmpty(data.getStringExtra("MetaData"))) {
                bmetaDataText.setVisibility(View.VISIBLE);
                bmetaDataText.setText("MetaData " + data.getStringExtra("MetaData"));
            }

            if (data.getStringExtra("DisplayContents") != null
                    && !TextUtils.isEmpty(data
                    .getStringExtra("DisplayContents"))) {
                dDisplayContents.setVisibility(View.VISIBLE);
                dDisplayContents.setText("Display Contents " + data
                        .getStringExtra("DisplayContents"));
            }
        }
    }
}

如果您有任何疑问或问题,请告诉我。

这样您就无需为条形码扫描仪安装第三方应用了

【讨论】:

  • 使用最少的代码。 sdk 15? “添加条形码扫描仪”是什么意思,我已经下载了这些文件。现在? :(
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-06
  • 1970-01-01
相关资源
最近更新 更多