android中Zing二维码扫描,二维码生成

一万年来谁著史,三千里外欲封侯。这篇文章主要讲述android中Zing二维码扫描,二维码生成相关的知识,希望能为你提供帮助。
    android中二维码扫描的最常用库是zxing和zbar,zxing项目地址为https://github.com/zxing/zxing,目前还有多个人在维护。zbar主要用C来写的,对速度有要求的可使用zbar,但目前没有在维护,项目地址:https://github.com/ZBar/ZBar。
1.添加依赖
在根build.gradle中添加maven { url ‘https://jitpack.io‘ }

allprojects { repositories { google() jcenter() maven { url ‘https://jitpack.io‘ } } }

 在你的app的build.gradle中添加依赖implementation ‘com.github.yuzhiqiang1993:zxing:2.0.0‘
/*添加依赖*/ compile ‘com.github.yuzhiqiang1993:zxing:2.0.0‘

2.权限
< uses-permission android:name="android.permission.CAMERA" /> < uses-permission android:name="android.permission.FLASHLIGHT" /> < uses-feature android:name="android.hardware.camera" /> < uses-feature android:name="android.hardware.camera.autofocus" /> < uses-permission android:name="android.permission.VIBRATE" /> < uses-permission android:name="android.permission.WAKE_LOCK" /> < uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> < uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

跳转到扫描界面
Intent intent = new Intent(MainActivity.this, CaptureActivity.class); /*ZxingConfig是配置类可以设置是否显示底部布局,闪光灯,相册,是否播放提示音震动等动能 * 也可以不传这个参数 * 不传的话默认都为默认不震动其他都为true * *///ZxingConfig config = new ZxingConfig(); //config.setShowbottomLayout(true); //底部布局(包括闪光灯和相册) //config.setPlayBeep(true); //是否播放提示音 //config.setShake(true); //是否震动 //config.setShowAlbum(true); //是否显示相册 //config.setShowFlashLight(true); //是否显示闪光灯 //intent.putExtra(Constant.INTENT_ZXING_CONFIG, config); startActivityForResult(intent, REQUEST_CODE_SCAN);

在onActivityResult中接收解析的结果
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // 扫描二维码/条码回传 if (requestCode == REQUEST_CODE_SCAN & & resultCode == RESULT_OK) { if (data != null) {String content = data.getStringExtra(Constant.CODED_CONTENT); result.setText("扫描结果为:" + content); } } }

生成二维码
如果你有生成二维码的需求,可以直接通过CodeCreator.createQRCode(contentEtString, 400, 400, null); 即可。
try { /* * contentEtString:字符串内容 * w:图片的宽 * h:图片的高 * logo:不需要logo的话直接传null * */Bitmap logo = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher); bitmap = CodeCreator.createQRCode(contentEtString, 400, 400, logo); } catch (WriterException e) { e.printStackTrace(); }

【android中Zing二维码扫描,二维码生成】参考于:https://blog.csdn.net/qq_30445765/article/details/79120359

    推荐阅读