Android - Zxing实现二维码的扫描与生成

Zxing:

Zxing是一个开放源码,用java实现的多种格式的1D/2D条码图像处理库,它包含了联系到其他语言的端口。可以实现使用手机内置摄像头完成条形码的扫描以及解码。

github:

      https://github.com/zxing/zxing

首先在写项目的时候,我们需要导入一个moduel,主要是从Zxing中提取的主要功能代码。其地址是:

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

扫描二维码:

在点击扫描二维码的页面:

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

重写onActivityResult( )方法:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

if (resultCode == RESULT_OK){

  Bundle bundle = data.getExtras();

  String a= bundle.getString("result");

  tvResult.setText(a);

}

}

此处: result是从CaptureActivity中传过来的。

a则代表从二维码中获取的数据信息。

生成二维码:

在module中提供了一个生成二维码的工具类:EncodingUtils

包括两个方法: createQRCode() 和 addLogo()

返回的类型: Bitmap

传入的参数: createQRCode(String content, int widthPix, int heightPix, Bitmap logoBm)

content: 二维码生成的内容

widthPix:宽度

HeightPix: 高度

logoBm: 二维码的log 不需要的话 传null

addLogo(Bitmap src, Bitmap logo)

在二维码上添加logo

希望可以对大家有所帮助。

相关推荐