添加依赖
implementation 'cn.yipianfengye.android:zxing-library:2.2'
权限
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<!-- 自动聚焦-->
<uses-feature android:name="android.hardware.camera.autofocus" />
动态权限
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
requestPermissions(new String[]{Manifest.permission.CAMERA,Manifest.permission.VIBRATE,Manifest.permission.WRITE_EXTERNAL_STORAGE}, 200);
}
1、生成二维码
img是布局文件中的ImageView
Bitmap bitmap= BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher);
Bitmap image = CodeUtils.createImage("哈哈哈哈", 400, 400, bitmap);
img.setImageBitmap(image);
2、扫描二维码
Intent intent = new Intent(MainActivity.this, CaptureActivity.class);
startActivityForResult(intent,101);
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==101&&resultCode== Activity.RESULT_OK){
Bundle bundle = data.getExtras();
if (bundle!=null){
String string = bundle.getString(CodeUtils.RESULT_STRING);
Toast.makeText(this, ""+string, Toast.LENGTH_SHORT).show();
}
}
}