如何通过条形码获取信息?

5

我是一名新的Android开发者,尝试创建一个使用条形码的应用程序。我尝试使用ZXing库,它非常容易上手。但是现在,我需要通过条形码获取有关产品的信息。我该怎么做呢?


1
不错的问题,点赞,因为我也是新手。 - Abdul Wahab
1
你需要使用某种产品查找工具。我知道谷歌购物有一些用于搜索UPC的功能,但还有许多其他服务可供选择。 - Aleks G
不清楚您是在问 1)如何捕获包含条形码的图像并从条形码中提取产品编号,2)使用条形码号码查找产品信息,还是3)以上所有内容。 - Cerin
5个回答

3

1

要使用一维条形码,请使用PRODUCT_MODE。 如果您想要能够扫描它们所有,请不要在extras scan_mode中设置任何内容。

Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.setPackage("com.google.zxing.client.android");
//intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
intent.putExtra("SCAN_MODE", "PRODUCT_MODE");
startActivityForResult(intent, 0);

0

你需要通过意图调用条形码阅读器,然后用户扫描条形码(如果他们已安装条形码阅读器),条形码阅读器将数据发送到您的应用程序

以下是如何执行此操作的代码。 http://code.google.com/p/zxing/wiki/ScanningViaIntent

正如您在public void onActivityResult中所看到的那样

这些是扫描仪返回的数据

        String contents = intent.getStringExtra("SCAN_RESULT");
        String format = intent.getStringExtra("SCAN_RESULT_FORMAT");

0

条形码只是一个数字(产品编号),您需要拥有一个网络服务,可以将这个数字发送过去以获取更多详情。


0

2023年解决方案:使用内置的Android条形码扫描器API:

dependencies {
  implementation 'com.google.android.gms:play-services-code-scanner:16.0.0'
}

GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(this);
scanner
    .startScan()
    .addOnSuccessListener(
        barcode -> {
          // Task completed successfully
        })
    .addOnCanceledListener(
        () -> {
          // Task canceled
        })
    .addOnFailureListener(
        e -> {
          // Task failed with an exception
        });

Source: https://developers.google.com/ml-kit/vision/barcode-scanning/code-scanner?hl=de#java


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接