Android扫码方案

发布时间:2024年01月22日

Android扫码方案

概述
两套方案,Google的ML KIT套件,zxing的zxing-android-embedded

选型第二种,优缺点自己评估 理论上google的套件更优雅可靠但是其基于机器学习仅提供两种方式,捆绑训练模型包或Google Play服务,让应用变得更大或国内无法使用Google服务

初始方案看示例即可

private final ActivityResultLauncher<ScanOptions> barcodeLauncher = registerForActivityResult(new ScanContract(),
            result -> {
				// 处理单独扫码时的扫码结果 result.getContents()
			}
 });

ScanOptions options = new ScanOptions();
options.setDesiredBarcodeFormats(ScanOptions.ONE_D_CODE_TYPES);
options.setPrompt("扫描条码");
options.setCameraId(0);  // Use a specific camera of the device
options.setBeepEnabled(false);
options.setBarcodeImageEnabled(true);
options.setCaptureActivity(ContinuousCaptureActivity.class);
viewBinding.videoCaptureButton.setOnClickListener(i -> barcodeLauncher.launch(options));

扫码时主动获取预览图方案

ISSUE
需求描述:扫码与拍摄分离,在点击按钮时获取预览图图像

barcodeView.getBarcodeView().setUseTextureView(true);
Bitmap bitmap = ((TextureView) barcodeView.getBarcodeView().getChildAt(0)).getBitmap();
文章来源:https://blog.csdn.net/Java_DreamLand/article/details/135749633
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。