给大家分享一个二维码扫描功能,这是基于谷歌的zxing库进行封装而成。
-
将封装包复制到你的项目里,并且在项目添加zxing库的依赖
implementation 'com.google.zxing:core:3.3.0'
-
将声音资源文件复制到你的项目的资源包里
3.扫描页面需要自己创建,新建布局,必须包括控件需要谷歌的SurfaceView和封装包里面的 ViewfinderView,然后可以根据自己的需求添加自己想要的控件
-
将你创建的二维码activity类继承封装包的BaseScanActivity(BaseScanActivity是继承了AppCompatActivity类,你可以手动将AppCompatActivity改成你项目的基类),在你的二维码activity类,实现接口方法initView里添加你的布局文件以及初始化第3步提到的两个控件,分别在两个实现接口方法里返回。
-
到这里二维码功能植入完成(这里没有做动态权限,demo在6.0系统运行需要手动到手机权限设置),在实现接口方法处理结果
- 如果你觉得二维码的颜色不符合你的项目主题色的话,可以调用ViewfinderView
的公共方法进行设置
viewfinderView.setHornColor(Color.GREEN);
viewfinderView.setLineColor(Color.RED);