二维码扫描、生成库
转载请注明出处,http://blog.csdn.net/qq137722697
基于 ZXing:core_v3.3.0(最新版) 的封装,扫描速度快
可选相册中的二维码识别
可识别条形码
相册选择适配至android7.1
支持19种语言
详细使用方法见demo
博客更新没有github快,最新版见github
图片比较大,请耐心等待
Add it in your root build.gradle at the end of repositories:
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
compile 'com.github.jwkj:LibZXing:v1.0.4'
}
生成一个300*300不带logo的二维码
QRCodeManager.getInstance().createQRCode("二维码内容", 300, 300);
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);
//扫描之后,自己处理扫描结果
}
转载请注明出处,http://blog.csdn.net/qq137722697
github地址:https://github.com/huangdali/LibZXing/
欢迎你的fork