8

我想在我的应用程序中创建一个二维码扫描仪。

我通过了zxing,但我无法理解。我只对二维码感兴趣。

高度赞赏所有帮助。

4

4 回答 4

10

将 com.google.zxing.client.* 源包的副本放入您的项目中。您可以像这样启动 zxing 扫描活动:

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

在您调用 CaptureActivity 的同一活动中,您可以使用以下 onActivityResult 方法在扫描完成时处理结果:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (data != null) {
            String response = data.getAction();

            if(Pattern.matches("[0-9]{1,13}", response)) {
                // response is a UPC code, fetch product meta data
                // using Google Products API, Best Buy Remix, etc.          
            } else {
                // QR codes - phone #, url, location, email, etc. 
                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse(response));
                startActivity(intent);
            }
        }
    }   

希望这可以帮助。

于 2011-03-31T19:14:54.390 回答
4

我知道这是一个老问题,但认为有人可能会觉得这很有用。

我最近发布了一个二维码阅读器应用程序,ZXing 确实是 Android 上的首选库。但是,我发现使用 ZXing 项目的源代码副本很困难。已经有一个库可以处理 ZXing 内核,甚至针对自定义使用对其进行了优化。

尝试zxing-android-embedded

  • 超级容易添加到您的应用程序。
  • 负责在后台线程中打开相机以提高性能。
  • 有用于自定义使用扫描仪的文档/示例。
  • 作者反应迅速,每 2 周提交一次 :)

我在这篇文章上放了一个指南。

希望这可以帮助!

于 2015-07-31T15:19:01.450 回答
2

现在有一个用于调用Mobile vision的 google API 。

代码示例: https ://github.com/googlesamples/android-vision/tree/master/visionSamples/barcode-reader

于 2015-11-09T20:13:56.590 回答
1

我使用一组插件完成了它,另外我插入了我自己的添加以使其成为一站式设置。

  1. 将附加的 zip 文件解压缩到您的项目中 ( https://github.com/chwagssd/qr/archive/master.zip )
  2. 指向 <script src="path/to/decoder.js"><script>
  3. 在您的 HTML 页面中创建一个具有 id 的文件输入,例如“xxx”

    <input type="file" id="xxxx">
    
  4. 然后告诉页面加载到QRIfy你的领域!确保包含您的回调函数,该函数将使用单个参数(已扫描的全文)调用: QRIfy('qrCode', onQrCode);//其中 qrCode 是您的 id

    <input type="file" id="xxxx">
    

我在这里设置了一个 GIT 存储库,获取代码(您可以下载 zip 并将其放在您的 javascript 文件夹中)

https://github.com/chwagssd/qr

于 2012-12-22T08:26:20.080 回答