android 扫描二维码

1、在build.gradle 中添加zxing依赖。

implementation 'com.journeyapps:zxing-android-embedded:3.5.0'
implementation 'com.google.zxing:core:3.3.3'

2、创建扫码xml文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context=".sy.Sy_ScanQRCodeActivity">

    <com.journeyapps.barcodescanner.CompoundBarcodeView
        android:id="@+id/barcode_scanner"
        android:layout_height="match_parent"
        android:layout_width="match_parent"/>
### 实现Android平台上的二维码扫描 #### 使用ZXing库集成二维码扫描功能 为了在Android应用程序中实现二维码扫描,可以采用ZXing(Zebra Crossing)开源库。该方法不仅简化了开发流程还提高了效率。 通过引入依赖的方式接入ZXing插件,在`build.gradle`文件内添加相应配置[^1]: ```gradle dependencies { implementation 'com.journeyapps:zxing-android-embedded:4.3.0' } ``` 创建用于启动扫描活动的方法如下所示: ```java private static final int REQUEST_CODE_SCAN = 1; private void startScan() { IntentIntegrator integrator = new IntentIntegrator(this); integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES); integrator.setPrompt("请将摄像头对准二维码"); integrator.setCameraId(0); // 使用默认相机 integrator.setBeepEnabled(false); // 关闭提示音 integrator.initiateScan(); } ``` 当用户完成扫描操作后,需重写`onActivityResult()`函数来接收返回的结果数据,并对其进行解析处理: ```java @Override protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE_SCAN && resultCode == RESULT_OK) { String scanResult = data.getStringExtra("SCAN_RESULT"); Toast.makeText(getApplicationContext(), "扫描结果:" + scanResult ,Toast.LENGTH_LONG).show(); } } ``` 除了上述方式外,还可以直接利用ZXing官方提供的Demo工程中的Java源码来进行本地化修改[^3]。这涉及到将特定路径下的包结构迁移到当前项目的对应位置。 对于更简单的场景,则可以直接跳转至预定义好的捕获页面(CaptureActivity),并通过Intent传递参数以获取最终识别出来的字符串信息[^2]: ```java private void launchCaptureActivity(){ Intent intent = new Intent(MainActivity.this, CaptureActivity.class); startActivityForResult(intent, REQUEST_CODE_SCAN); } ``` 以上就是基于ZXing库实现在Android设备上进行二维码读取的主要步骤和技术要点介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值