上一篇文章我们介绍了如何接入微信开源的扫码库,来提升扫码识别率和扫码速度。
但是由于接入微信扫码库,需要用到OpenCV和JNI相关的一些知识,所以还是有一定门槛的。

这篇文章,我们来接入华为的扫码库,相比接入微信扫码库要简单很多,正对扫码弱光、弯曲等场景下作了特殊的优化,在某些实际扫码场景上,比微信还要强 !

华为扫码库有提供两种SDK,可以根据需求选择合适的

特别要注意的是
如果在非华为手机使用多码能力接口,请使用Scan SDK-Plus,否则会影响识别。

具体接入请看 华为统一扫码服务 官方文档 ,扫码的效果真的很棒,建议实际体验一下。

华为的扫码库接一下是很简单的,但是它只是一个扫码解析库,想要自定义扫码界面的UI,还需要自己搞一套,为了解决这个问题,我创建了一个第三方库,将将 BGAQRCode-Android 和ZXingLite 中的扫码UI独立抽离取来,使其能独立使用,从而可以对接上华为的扫码库。

添加依赖

allprojects {repositories {...maven { url 'https://www.jitpack.io' }}
}
dependencies {implementation 'com.github.EthanCo:QrCodeScanUI:v1.0.0'
}

如何使用
有两个扫码UI类可以选择,ViewfinderView或ScanBoxView,这两个类都可以实现相似的效果,可自行进行选择。
ViewfinderView

<com.heiko.scan.ViewfinderViewandroid:id="@+id/viewfinderView"android:layout_width="match_parent"android:layout_height="match_parent"app:cornerColor="@color/colorYellow"app:cornerRectHeight="25dp"app:cornerRectWidth="5dp"app:frameColor="@color/transparent"app:frameGravity="center"app:frameHeight="@dimen/scan_rect_width"app:framePaddingBottom="10dp"app:frameWidth="@dimen/scan_rect_width"app:gridHeight="0dp"app:labelText=""app:labelTextLocation="bottom"app:labelTextSize="14sp"app:labelTextWidth="180dp"app:laserColor="@color/colorYellow"app:laserStyle="line"app:maskColor="#7F000000" />

ScanBoxView

<com.heiko.scan.ScanBoxViewandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_gravity="center"app:qrcv_animTime="1000"app:qrcv_borderColor="@android:color/white"app:qrcv_borderSize="1dp"app:qrcv_cornerColor="@color/colorYellow"app:qrcv_cornerLength="60dp"app:qrcv_customScanLineDrawable="@mipmap/icon_scan_line"app:qrcv_isOnlyDecodeScanBoxArea="false"app:qrcv_isTipTextBelowRect="true"app:qrcv_maskColor="#A1000000"app:qrcv_qrCodeTipText="请对准二维码扫描"app:qrcv_rectWidth="225dp"app:qrcv_scanLineMargin="8dp"app:qrcv_tipTextSize="13sp"app:qrcv_topOffset="130dp" />

效果如图所示

具体可以看我的Github QrCodeScanUI

Android 接入华为扫码库,实现堪比微信扫码的效果相关推荐

  1. Android接入华为推送详细步骤

    由于极光推送的到达率不高,所以项目重要集成个推,进行华为推送和小米推送 前提:先说下Mainfest文件中需要的配置,可以参考相关文件 <!--HMS-SDK引导升级HMS功能,访问OTA服务器 ...

  2. android 接入华为支付,hms-iap-clientdemo-android-studio

    华为应用内支付服务客户端示例代码 本章节主要介绍接入华为应用内支付的客户端开发步骤,帮助您快速了解华为支付提供的客户端接口及其使用方法. 点击此处了解更多. 目录 简介 华为应用内支付服务(HUAWE ...

  3. 微信扫码充值 php,PHP原生微信扫码支付

    素材火分享了多个微信支付源码,有用户需要一款PHP原生代码写的微信扫码支付,不基于任何框架,完全手写.需要其他支付源码的可找素材火管理员定制开发. 下载资源 下载积分: 800 积分 扫码支付只要授权 ...

  4. asp源码爱好者福利,asp调用微信扫一扫代码,用asp写的调用微信内置扫一扫功能源码下载

    接到一个用户的需求,要在他的手机版网页里实现扫一扫功能,扫出他的产品编号入库,这太简单了,花了几分种时间给他实现一下. 微信扫一扫必须使用微信内置浏览器访问此页面才能查看效果: 程序功能: 通过微信J ...

  5. 微信扫码支付html,pc端微信扫码支付和支付宝在线支付

    本DEMO演示了PHP支付宝和微信扫码在线支付,支付成功后,在回调地址显示支付相关信息. 难易:中级 下载资源 下载积分: 888 积分 操作步骤: 1.修改配置文件 Application/comm ...

  6. Android 接入华为通知栏推送教程(特此整理)

    前言: 受华为开发者联盟工作人员的邀约,特此将本篇博客重新整理一遍,希望让更多人受益,大家也可以参加华为开发者联盟推出活动,去提问自己的问题或者投稿. 扫二维码就可以参与活动哦. 首先本教程是基于华为 ...

  7. android接入华为推送

    最近公司产品想要提高用户体验,便让我研究一下华为推送的问题.其实推送最重要的就是进程保活的这个问题,这是一个比较棘手的问题.现在比较普遍的做法是集成多个厂商的推送,例如小米,华为,魅族推送等,再加一个 ...

  8. 监听网页微信扫码支付成功_PC网页微信扫码支付(模式二)

    WeixinWebUtil(微信请求工具类) public class WeixinWebUtil { private static Logger log = LoggerFactory.getLog ...

  9. Android 接入微信扫码库,实现堪比微信的扫码效果

    对于Android的扫码库,我们平时都会使用ZXing或者ZBar来实现. 但是实际情况是,对于一些环境恶劣的情况下,比如 眩光.昏暗.有污渍等情况下,很难被识别. 即使是在普通情况下,扫码的识别速度 ...

最新文章

  1. YYHS-魏传之长坂逆袭(梦回三国系列T1)
  2. Vue中添加新的路由并访问
  3. 计算机二级vf笔试,计算机二级(VF)笔试120.doc
  4. 小白也能学会的 Git 常用指令指南
  5. nginx(五)nginx与php的安装配置
  6. 使用js脚本的好处以及其本身的特点
  7. java constructors_[译]understanding constructors
  8. loadrunner11 post请求接口压力测试并生成报告
  9. DATEDIF函数使用方法高级篇到期提醒等
  10. Pangu Separates Heaven and Earth(签到题)
  11. Arduino 驱动TM1638显示十位的共阳数码管
  12. 关于数据科学的十本好书
  13. win7 精简板 安装ardunio uno r3驱动
  14. 红米2 com.android.phone,红米2手机(移动/联通/电信) 7.1 ROM 下载地址搬运(2017年3月10日更新)...
  15. R语言-蒲丰投针问题(向量化)
  16. 2015年史上最全的SEO网站优化方案流程
  17. 出塞二首 唐 · 王昌龄
  18. 精彩书摘:团队建立初期要做的事情
  19. 计算机技术 高中教案,高中信息技术 计算机软件教案
  20. jquery LigerUI是什么?

热门文章

  1. 关于双击.py文件闪退的问题
  2. 2014年信息安全产品及厂家分类-漏洞扫描类(主机web)安全厂商
  3. c专家编程3、4章读书笔记
  4. 手机系统计算机怎么解决办法,手机与电脑时间不一致如何解决?几种解决方法介绍...
  5. 【我不熟悉的javascript】使用mousedown.stop.prevent,阻止选区消失
  6. 走近酷点KoolPoint,深度挖掘网管软件的设计细节
  7. 集成灶十大名牌排行榜,好口碑高性价集成灶前10强推荐
  8. PostgreSQL实现oracle中rowid
  9. frida hook so层常用的方法
  10. linux命令创建硬链接,Linux中的ln命令:创建软链接和硬链接