文档章节

基于Zxing封装的二维码开源库

七水剑帝
 七水剑帝
发布于 2017/07/05 18:41
字数 337
阅读 13
收藏 0

https://github.com/huangdali/LibZXing

百度云下载

http://pan.baidu.com/s/1kVBRkwf

 

Step 1. Add the JitPack repository to your build file

Add it in your root build.gradle at the end of repositories:

    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Step 2. Add the dependency

dependencies {
        compile 'com.github.jwkj:LibZXing:v1.0.4'
}

生成二维码

生成一个300*300不带logo的二维码

QRCodeManager.getInstance().createQRCode("二维码内容", 300, 300);

生成一个300*300有logo的二维码

QRCodeManager.getInstance().createQRCode("二维码内容", 300, 300,logoBitmap);

 

识别二维码

方法一:自动解析结果(推荐)

在调用处的activity/fragment注册onActivityResult方法

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        //注册onActivityResult
        QRCodeManager.getInstance().with(this).onActivityResult(requestCode, resultCode, data);
    }

监听扫描按钮单击事件

public void onScanQR(View view) {
        QRCodeManager.getInstance()
                .with(this)
                .setReqeustType(1)//可以不设置,默认是0
                .scanningQRCode(new OnQRCodeScanCallback() {
                    @Override
                    public void onCompleted(String result) {//扫描成功之后回调,result就是扫描的结果
                        controlLog.append("\n\n(结果)" + result);
                    }

                    @Override
                    public void onError(Throwable errorMsg) {//扫描出错的时候回调
                        controlLog.append("\n\n(错误)" + errorMsg.toString());
                    }

                    @Override
                    public void onCancel() {//取消扫描的时候回调
                        controlLog.append("\n\n(取消)扫描任务取消了");
                    }
                });
    }

方法二:手动解析结果

开始扫描二维码

QRCodeManager.getInstance().with(this).scanningQRCode(requestCode);

扫描结束之后,结果可以在调用处的activity/fragment的onActivityResult中拿到

@Override
   protected void onActivityResult(int requestCode, int resultCode, Intent data) {
       super.onActivityResult(requestCode, resultCode, data);
       //扫描之后,自己处理扫描结果
      }

 

 

© 著作权归作者所有

共有 人打赏支持
七水剑帝
粉丝 1
博文 47
码字总数 36879
作品 0
宜春
基于zxing-lib三步实现Android二维码应用

只需要基于开源项目zxing-lib,便可轻松创建独立二维码App,也可将二维码功能集成进App内。本文也是zxing-lib的使用文档。同时抛砖引玉,欢迎大家一起共建zxing-lib。 项目地址:https://git...

yuminw
2014/08/23
0
8
基于zxing生成与解析二维码、条形码

基于zxing(https://github.com/zxing/zxing)与maven,针对二维码(包括带图片的二维码)、条形码进行了简单的封装,以便在项目中更好的利用。 ZXing是一个开源Java类库用于解析多种格式的1D/...

cloud-coder
2014/03/17
0
0
ZXing读写二维码,桌面和手机的不同用法

虽然ZXing是用Java实现的Barcode开源库,但是并不代表桌面上实现的Barcode应用在手机上也可以直接使用。因为Android的Java接口有很多是不同的。这里分享下Java Barcode生成和读取的不同用法。...

yushulx
2015/08/18
0
0
利用zxing读写PDF417码制的二维码

项目中需要用到二维码,二维码的码制是PDF417,在做了一番研究之后发现zxing是个不错的开源工具(代码托管在google上面)。为什么选择zxing,由于其他一些工具比如barcode4j(开源,支持读,...

彭苏云
2013/12/17
0
0
Android微信扫描二维码登入实现 基于ZXing开源工程

项目需求,做一个类似微信扫描二维码,网页端登陆的功能实现。 利用开源项目ZXing来实现。ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码。目标是能够对QR编码、Data Matrix、UPC的1...

jeffzhao
2013/02/02
0
7

没有更多内容

加载失败,请刷新页面

加载更多

70.shell的函数 数组 告警系统需求分析

20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求分析 20.16/20.17 shell中的函数: ~1. 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段...

王鑫linux
今天
3
0
分布式框架spring-session实现session一致性使用问题

前言:项目中使用到spring-session来缓存用户信息,保证服务之间session一致性,但是获取session信息为什么不能再服务层获取? 一、spring-session实现session一致性方式 用户每一次请求都会...

WALK_MAN
今天
6
0
C++ yield()与sleep_for()

C++11 标准库提供了yield()和sleep_for()两个方法。 (1)std::this_thread::yield(): 线程调用该方法时,主动让出CPU,并且不参与CPU的本次调度,从而让其他线程有机会运行。在后续的调度周...

yepanl
今天
4
0
Java并发编程实战(chapter_3)(线程池ThreadPoolExecutor源码分析)

这个系列一直没再写,很多原因,中间经历了换工作,熟悉项目,熟悉新团队等等一系列的事情。并发课题对于Java来说是一个又重要又难的一大块,除非气定神闲、精力满满,否则我本身是不敢随便写...

心中的理想乡
今天
48
0
shell学习之获取用户的输入命令read

在运行脚本的时候,命令行参数是可以传入参数,还有就是在脚本运行过程中需要用户输入参数,比如你想要在脚本运行时问个问题,并等待运行脚本的人来回答。bash shell为此提 供了read命令。 ...

woshixin
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部