扫描库使用的是华为的scanplus

  1. implementation 'me.luzhuo.android:lib_qrcode:1.0.0-SNAPSHOT'

1. 使用 ScanPlus 提供的默认样式

  1. @SuppressLint("MissingPermission")
  2. public void onClick(View view) {
  3. QRCodeManager.getInstance().openScanDefaultView(this);
  4. }
  5. @Override
  6. protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
  7. super.onActivityResult(requestCode, resultCode, data);
  8. String scanDefaultViewData = QRCodeManager.getInstance().parseScanDefaultViewData(requestCode, resultCode, data);
  9. Log.e(TAG, "" + scanDefaultViewData);
  10. }

2. 使用自定义样式

样式 截图
QRCodeManager.QRCodeStyleA 微信图片_20220331072531.jpg
  1. QRCodeManager.getInstance().openScan(this, QRCodeManager.QRCodeStyleA, new QRCodeCallback() {
  2. @Override
  3. public void onQRResult(@NonNull String result) {
  4. Log.e(TAG, "" + result);
  5. }
  6. });

3. 创建二维码

  1. Bitmap bitmap = QRCodeManager.getInstance().createQrCode("这是二维码内容", 200.dp, 200.dp);
  2. Bitmap bitmap = QRCodeManager.getInstance().createQrCode("这是二维码内容", 1.dp, 0xFF000000, 0xFFFFFFFF, 200.dp, 700.dp);
  3. imageView2.setImageBitmap(bitmap);