使用ZXing代码实现二维码扫描

Posted 两三点,雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ZXing代码实现二维码扫描相关的知识,希望对你有一定的参考价值。

1 首先下载Zxing的源码,然后将其中android的版本导入到Android Studio

2 因为只需要二维码扫描的功能,所以只留下其中的四个包

其中 camera管理相机,decoding解析扫描到的二维码,view定义扫码的视图,MipcaActivityCapture是扫码的界面。

3 将res文件下的文件拷贝过来,注意是合并,不是简单的替换

4 修改AndroidMinifest.xml

5 修改由R引用带来的错误?

技术分享

6 添加jar包,jar包导入不是简单的复制,要右键 add as library,导入成功后的jar包是可以展开的,如图?

7最终的结果如图

技术分享
技术分享

?有一个问题是取景框内的二维码被拉伸了。。。待解决。

解决方法是?

?Zxing  修改 CameraConfigurationManager.java文件的

void initFromCameraParameters(Camera camera)方法

在 Log.d(TAG, "Screen resolution: " + screenResolution);这句之后增加

?

  • Point screenResolutionForCamera = new Point();  screenResolutionForCamera.x = screenResolution.x;   screenResolutionForCamera.y = screenResolution.y;    // preview size is always something like 480*320, other 320*480
  • if (screenResolution.x < screenResolution.y) {  
  •         screenResolutionForCamera.x = screenResolution.y;  
  •         screenResolutionForCamera.y = screenResolution.x;  
  •         } 
  • ?再把其后的一句代码改为
  • cameraResolution = getCameraResolution(parameters, screenResolutionForCamera); 

 

 

以上是关于使用ZXing代码实现二维码扫描的主要内容,如果未能解决你的问题,请参考以下文章

基于Zxing的二维码的二维码扫描之横屏扫描

android开发 如何实现扫描本地二维码图片

Google zxing实现二维码扫描完美解决方案

Google zxing实现二维码扫描完美解决方案

Google zxing实现二维码扫描完美解决方案

Zxing二维码扫描