二维码的生成以及长按识别

感觉又有好久没写过博客了,最近感觉在二维码这方面又有些生疏了,所以将以前的项目中用到的二维码拿出来又看了一遍,感觉以后可能要用的着,而且发现了个重大的BUG,于是改正了过后,将其记录在此。

肯定很多人觉得为什么不将扫码也一起写了,我开始也是这么想的,后来觉得还是算了,我曾经用过Libzxing 这个二维码扫描库,但是我感觉它的效率没有自己基于zbar封装的速度快,所以,项目里面关于二维码扫描,我基本上都是用的Zbar,但是zbar不支持生成二维码,而且用zxing也比较简单,所以,我将二维码按照所用的第三方库不同分开来写。

1、首先去github上面将zxing切下来,将里面的核心jar文件复制在lib文件夹里面,然后导入项目中,基本工作就做完了。
2、新建一个类QRCodeUtils
这里写图片描述
这个方法返回的就是一张二维码图片,然后在外部调用的时候,直接传入字符串,和二维码边长就可以了

3、简单的生成二维码就可以了,调用createQRCode()方法,将返回的二维码图片放在我们ImageView里面就可以显示出来。找到这个控件设置它的长按监听。
这里写图片描述

如图所示,就可以很简单的实现长按识别二维码码了,具体的优化我没有做,这个优化看每个人的需求,比如什么弹出框啊,什么的,根据需求自己更改就行了,如果生成的图像要求质量不那么高的话,生成Bitmap时,可以设置成ARGB_4444或者ARGB_565,这样可以防止oom。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值