1. 快速集成扫码二维码,识别二维码功能。经过加工处理优化的,直接返回扫码结果字符串和图片的bitmap数据。

直接上代码:

package com.xinxinchelian.myscanzxing;import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.Window;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;import com.example.scanzxing.zxing.android.CaptureActivity;
import com.example.scanzxing.zxing.common.Constantes;import java.net.URLDecoder;
import java.net.URLEncoder;/*** @Author: rhj* @CreateDate: 2020/12/14 21:26*/
public class MainActivity extends AppCompatActivity {private AppCompatActivity mActivity;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_setting);mActivity = this;initView();ScreenUtils(getWindow());}public static void ScreenUtils(Window window) {if (window == null){return;}window.setFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);//---------------------------------------------------------------------}private void initView() {findViewById(R.id.test_qr_scan_btn_TV).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {//动态权限申请if (ContextCompat.checkSelfPermission( mActivity, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {ActivityCompat.requestPermissions( mActivity, new String[]{Manifest.permission.CAMERA}, 1);} else {goScan();}}});}/*** 跳转到扫码界面扫码*/private void goScan(){Intent intent = new Intent(mActivity , CaptureActivity.class);startActivityForResult(intent, Constantes.REQUEST_CODE_SCAN );}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);// 扫描二维码/条码回传if (requestCode == Constantes.REQUEST_CODE_SCAN && resultCode == RESULT_OK) {if (data != null) {//返回的文本内容String content = data.getStringExtra(Constantes.CODED_CONTENT);Bitmap bitmap =  data.getParcelableExtra(Constantes.CODED_BITMAP);//返回的BitMap图像
//                Bitmap bitmap = data.getParcelableExtra(DECODED_BITMAP_KEY);
//                tv_scanResult.setText("你扫描到的内容是:" + content);Toast.makeText(getApplicationContext(),  "扫描到的内容是:" + content , Toast.LENGTH_LONG).show();Log.e("扫描到的内容是" , "扫描到的内容是:" + content);if (!TextUtils.isEmpty(content)){TextView plateNoTV = findViewById(R.id.test_qr_plateNo_TV);plateNoTV.setText("扫描结果: " + content);TextView plateNoTV2 = findViewById(R.id.test_qr_plateNo_TV2);plateNoTV2.setText("扫描结果反转义: " + testDecode(content));if (content.contains("plateNo=")){plateNoTV2.setText("扫描结果反转义: " + testDecode(content.substring(content.indexOf("plateNo=") + 8)));}}if (bitmap != null){ImageView textBitmapIMG = findViewById(R.id.test_Bitmap_IMG);textBitmapIMG.setVisibility(View.VISIBLE);textBitmapIMG.setImageBitmap(bitmap);} else {Log.e("扫描到的内容是" , "扫描到的内容是:bitmap = null" );}}}}public String testEncode(String url){
//        String url="http://192.168.0.19:8888/cas/login";String urlEncodee= URLEncoder.encode(url);System.out.println(urlEncodee);return urlEncodee;}public String testDecode(String url){
//        String url="http%3A%2F%2F192.168.0.19%3A8888%2Fcas%2Flogin";String urlDecode= URLDecoder.decode(url);System.out.println(urlDecode);return urlDecode;}}

需要的权限  AndroidManifest.xml:

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera"android:required="true" />

2. 导入aar包  scanzxinglibrary-release.aar(和jar功效一样)

3. 扫码效果,

demo下载地址:

https://download.csdn.net/download/renhaijuniryfe/19360939

https://download.csdn.net/download/renhaijuniryfe/19360983

android扫码二维码识别二维码相关推荐

  1. 二维码扫描+长按识别二维码demo

    二维码扫描+长按识别二维码demo,已封装好 源码下载

  2. 戴眼镜检测和识别3:Android实现戴眼镜检测和识别(含源码,可实时检测)

    Android实现戴眼镜检测和识别(含源码,可实时检测) 目录 Android实现戴眼镜检测和识别(含源码,可实时检测) 1.戴眼镜检测和识别方法 2.戴眼镜人脸检测 3.戴眼镜识别模型训练 4.戴眼 ...

  3. Android利用zxing用相机扫描识别二维码(添加闪光灯和本地二维码)超详细教程

    之前写了怎么用zxing的jar包进行简单的识别和生成二维码,以及生成带图片的二维码. 接下来单独说说怎么用相机扫描二维码,用相机扫描二维码相对于前面的生成二维码,识别二维码来说要麻烦一点,网上的教程 ...

  4. qrcodejs2的错误、公众号识别不了二维码、公众号识别二维码没反应

    如果你要问公众号识别二维码没反应,那它一定不是一张图片,哈哈哈哈哈哈哈!!!!! ps:qrcodejs2使用很简单不阐述,但是 但是它在苹果微信上生成了imgs,在安卓微信上生成的是canvas,所 ...

  5. 生成二维码和二维码的logo,识别二维码发送短信

    发送短信到网站  http://www.smschinese.cn/  上注册用户获取到(要填签名) THE_UID和THE_KEY.smsMob:手机号,smsText发送的信息(两个参数不能为空) ...

  6. Android利用zxing生成二维码,识别二维码,中间填充图片超详细、超简易教程

    gayhub上的zxing可用于生成二维码,识别二维码 gayhub地址:https://github.com/zxing/zxing 此文只是简易教程,文末附有完整代码和demo下载地址,进入正题: ...

  7. Android 扫描、生成、识别二维码、条码 一库搞定

    他来了,他来了,他带着YXing走来了. YXing 集成了CameraX + zxing, 简洁调用,功能完善,自定义扫码界面,再也不用像以前一样cv一堆冗余的Camera代码进项目了. 怎么集成: ...

  8. Python3 生成和识别二维码

    文章目录 问题描述 代码 一点解释 [写在前面] 在当今社会中,二维码的使用非常的广泛.当然作为一名充满好奇心又爱装逼的 coder 怎么能不会使用二维码编码自己想表达的内容呢,尤其是用在装逼和找对象 ...

  9. iOS二维码识别/二维码生成

    文章目录 前言 扫一扫识别二维码图片 长按图片识别二维码图片 生成二维码图片 代码完善 识别二维码图片优化 小结 前言 最近在做一个关于二维码的组件,已发布,现总结下. 开发的APP所需支持的最低版本 ...

  10. PHP二维码的生成与识别案例

    二维码的分类线性堆叠式二维码 矩阵式二维码 二维码的优缺点 优点 信息容量大 编码范围广 容错能力强 译码可靠性高 可引入加密措施 成本低,易制作 缺点 二维码技术成为手机病毒.钓鱼网站传播的新渠道 ...

最新文章

  1. python fsolve_Python-optimize.leastsq()和optimize.fsolve()
  2. Android多线程分析之二:Thread的实现
  3. mac word 设置语言_如何更改Mac的语言和区域设置
  4. 前端基础进阶(七):函数与函数式编程
  5. css3新增特性集合贴
  6. android drawLayout抽屉布局
  7. Maven学习(三)-----Maven本地资源库
  8. 三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数(day4)
  9. 大学计算机 学生成绩表格,学生成绩分析系统的设计与实现
  10. 【转】android gravity属性 和 weight属性
  11. 九、面向对象三大特征(三)—— 多态
  12. dell2900服务器做系统,dell2900如何重装系统
  13. Python 爬取科技部计划申报指南pdf文件并作词频分析
  14. mysql的升序和降序
  15. 利用阿里云短信找回密码 SpringBoot集成Mybatis
  16. mt6735通用recovery_Mtkroot ,arm64通用使用无需bl或者rec,安卓7以下使用最佳!
  17. 微信小程序PHP注册,微信小程序 教程之注册页面
  18. Mirror 镜像站点的使用
  19. 史上最全体检表、检验报告解析
  20. java2.0qq同步_qq同步助手2.0 apk下载

热门文章

  1. Rabbitmq客户端接收消息为字符数组解决
  2. STM32开发实战:W25Q32JV SPI Flash详解
  3. 为什么资源隔离对HTAP至关重要?
  4. 虚拟机 报错:Unmount and run xfs_repair
  5. 数据挖掘(一)你真的了解什么是数据挖掘和数据本身吗?
  6. Synctoy定时自动同步数据
  7. 焦深(depth of focus)
  8. python多叉树遍历_基于Python的多叉树遍历算法
  9. html 设置移动端页面滚动,a.html · 焚心/移动端页面上下滚动加多页面上拉加载功能及mescroll插件的使用 - Gitee.com...
  10. Keras教程:使用Keras开始深度学习和Python(上)