ZXing CaptureActivity黑屏问题

关于zxing captureActivity黑屏的问题,我在网上搜索一下,结果发现几乎没有这方面的资料。后来自己用了半天时间,独步跟踪调试,查看相机类的代码,最后发现了一点问题,就是关闭相机的时候没有停止相机的界面(也可能不是这个问题,但是不管怎么样能解决问题就行了O(∩_∩)O~)。所以我就修改了package com.google.zxing.camera这个包下的类CameraManager.java,然后修改了closeDriver()这个方法。调式,问题解决了。下面贴出简单的代码,希望对别人有点帮助。

问题描述:使用zxing进行条码扫描的时候,如果你按了返回键或者搜索键或者home键,不管你操作了什么,只要是切换了当前活动的activity。而当你再返回扫描界面的时候,会发现扫描界面居然变成了黑色的背景,只看到了一条红色的线了。

解决方法:
找到package com.google.zxing.camera下的类CameraManager.java类,修改closeDriver()方法,非常简单:
..................省略了前面的代码
public void closeDriver() {
    if (camera != null) {
      FlashlightManager.disableFlashlight();
      if (previewing) {
    camera.stopPreview();
      }
      
      camera.release();
      camera = null;
      previewing=false;
    }
  }
..................省略了后面的代码

好了,运行调式吧。


以前写在博客园的文章

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: Android ZXing是一个开源的条码扫描库,用于在Android设备上实现条码识别功能。它基于Java语言开发,由Google开源,具有强大的条码扫描和解码能力。 使用Android ZXing,开发人员可以方便地在Android应用程序中集成条码扫描功能。使用该库,可以扫描多种类型的条码,如二维码、一维条码等。它支持常见的条码格式,如QR码、Aztec码、Code 128、Code 39等。 Android ZXing的集成相对简单。开发人员可以直接下载库并将其作为依赖项添加到自己的项目中。然后,可以使用ZXing提供的API来调用扫描功能并获取扫描结果。 在使用Android ZXing时,可以自定义扫描界面的外观和行为。可以设置扫描界面的显示方式、扫描框的样式和大小等。此外,还可以配置扫描过程中的声音和震动反馈,以便给用户更好的交互体验。 Android ZXing还提供了一些其他功能,如从相册中选择图片进行扫描、生成条码等。开发人员可以根据自己的需求利用这些功能。 总的来说,Android ZXing是一个功能强大、易于使用的条码扫描库,为开发人员提供了便捷的条码识别解决方案。它的开源特性和丰富的功能使得它在Android开发中被广泛应用。 ### 回答2: Android ZXing是一个开源的条码和二维码扫描库,它使用Java语言编写,并可以轻松集成到Android应用程序中。 ZXing的全称是Zebra Crossing,旨在为开发人员提供一个简单易用的方式来实现条码和二维码的扫描和解码功能。它支持多种条码格式,包括常见的EAN、UPC、QR Code等,可以在相机预览界面实时扫描条码,并快速解码。 使用ZXing库进行条码和二维码扫描非常方便。首先,我们需要在Android应用程序的build.gradle文件中添加ZXing库的依赖。接下来,我们可以在应用程序中创建一个扫描界面,并使用ZXing库提供的CaptureActivity类来实现条码扫描。通过调用startActivityForResult()方法启动扫描界面,然后在onActivityResult()方法中获取扫描结果。ZXing会自动处理相机的打开、关闭和解码过程,我们只需要处理扫描结果即可。 除了扫描功能之外,ZXing还提供了其他一些有用的功能,如生成二维码。我们可以使用ZXing库提供的EncodeHintType类来设置二维码的参数,如编码格式、容错级别等,然后调用ZXing提供的编码方法来生成二维码图片。 总之,Android ZXing是一个功能强大、易于集成的条码和二维码扫描库,可以方便地实现扫描和解码功能,以及二维码的生成。无论是在电子商务应用中实现商品条码扫描,还是在社交媒体应用中实现二维码分享,ZXing都是一个值得考虑的选择。 ### 回答3: Android ZXing 是一个开源的二维码扫描库,能够在Android设备上实现二维码的生成和扫描功能。ZXing是“Zebra Crossing”的缩写,是为了纪念斑马线的设计师而取的名字。 在Android中使用ZXing库,我们可以方便地集成二维码的生成和扫描功能到我们的应用中。要生成二维码,我们只需要提供需要转换为二维码的文本信息,ZXing会帮我们生成相应的二维码图片。而扫描二维码也非常简单,只需要打开相机并对准二维码,ZXing会自动识别并解码出相应的文本信息。 ZXing库提供了广泛的配置选项和自定义功能,我们可以根据需求调整二维码的尺寸、颜色、背景等样式,也可以添加Logo等个性化的元素。此外,ZXing还支持多种条码的识别,包括条形码、PDF417等。 ZXing库的优势在于它的稳定性和广泛的应用场景。它已被广泛应用于许多商业应用中,如电商、支付、快递等领域,为用户提供了便捷的扫码支付、商品查询等功能。同时,ZXing也逐渐成为开发者常用的库之一,因其开源的特性,我们可以通过查看源码了解其实现原理,也可以根据需要自定义修改。 总之,Android ZXing是一个功能强大、稳定可靠的二维码扫描库,为Android开发者提供了便捷的二维码扫描和生成功能,也为用户提供了便利。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿宁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值