检测图片中是否有二维码
需求说明
从手机相册选择一张图片,或者是拍一张图片,然后通过代码去检测这张图片中是否有二维码,并给出对应的提示(Toast)。
本文利用打开系统相册功能实现选择图片,用到的技术支持是华为的依赖库,下面开始看具体实现。
配置工作
项目依赖库是基于 androidX
的,app 下build.gradle
中添加如下配置:
复制代码
项目的build.gradle
完整代码如下:
复制代码
示例只有一个页面,添加一个按钮即可,点击事件触发跳转相册选取图片并在回调onActivityResult()
中判断是否有无二维码,该方法完整代码如下:
复制代码
这里需要注意:
清单文件中的读写文件权限必须添加
代码中动态申请权限必须添加(示例中省略)
适配 Android7.0+ Uri 无法被其它应用调用报``FileUriExposedException`异常问题(示例中省略)
跳转系统相册代码:
复制代码
以上工作确定都正确完成了,那么就可以测试了,实际效果这里不做演示了,没啥可看的,直接上手就行。
小结
华为技术真的不容小觑,已经提供了很多厉害的开源依赖了,本文的图片中二维码识别技术就是其一,另外如果你还继续使用zxing
来做扫码,那么我推荐你使用华为提供的技术,速度上更给力。
我是一名安卓开发工程师,最近正在学习 Java 后端知识,每天保持学习,掌握一项技能其实用不了多长时间,加油!
版权声明: 本文为 InfoQ 作者【逆锋起笔】的原创文章。
原文链接:【http://xie.infoq.cn/article/1bc6b37ec5746c378566c4dfd】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论 (2 条评论)