开发停车场扫码收费APP时,扫码功能的优劣直接关系到用户的体验。起初,我选择了ZXing,却遭遇了不少麻烦,比如距离、角度、光线等因素稍有影响,扫码成功率就大打折扣,这让我的上级也不太满意。然而,华为的ScanKit却给了我意外的惊喜。
ZXing的不足
在开发停车场扫码收费APP的过程中,我首先选择了ZXing。在网上搜索时,它出现的频率很高,于是我就尝试了一下。集成过程中,感觉操作挺简单,没有遇到什么复杂的步骤。然而,实际效果却让人非常失望。在停车场这种特定场景中,需要考虑很多因素。比如,如果距离较远,就很难正常扫码;又或者车辆表面反光,或者停车场光线昏暗,扫码几乎无法成功,成功率非常低。对于这种需要快速准确扫码的停车场来说,这简直是一个无法容忍的缺陷。如果这个问题在实际使用中出现,将会导致车辆等待时间过长,用户体验非常糟糕。
开发高效停车场扫码收费系统迫在眉睫,我们绝不能在扫码功能这一明显存在问题的环节上继续耗费时间。亟需找到更为理想的解决方案。
偶然发现华为ScanKit
偶然的机会让情况有所改变。我在一次华为的发布会上注意到了一个引人注目的扫码功能。当时,我内心一半相信一半怀疑,因为之前曾受过ZXing的打击。但转念一想,试一试也无妨,毕竟不会有什么损失。这个被官方称作ScanKit的扫码神器,让我感到惊喜的是,它还支持iOS系统,这意味着它能覆盖更多用户所使用的设备类型。
buildscript {
repositories {
maven {url 'http://developer.huawei.com/repo/'}
}
}
allprojects {
repositories {
maven { url 'http://developer.huawei.com/repo/'}
}
}
它被誉为效果出众,这激发了我一试的欲望。我动手进行了测试,结果令人震惊。与之前的ZXing情况相比,差异极为显著。
华为ScanKit实测效果好
华为ScanKit在实际测试中表现出色。在停车场,可能遇到多种恶劣环境,例如二维码反光、污损、形状扭曲,甚至车辆距离非常遥远,有时可达两米开外。以往使用ZXing根本无法识别,但ScanKit却能轻松且精确地识别出二维码信息。
dependencies{
implementation 'com.huawei.hms:scanplus:1.1.1.301'
}
停车场收费,这一点至关重要。员工扫码的速度明显提升,车主扫码时也不必频繁变动车辆位置或姿势。经过一天的累积,这一环节节省的时间非常可观。同时,这也将有助于提升停车场在车主心中的形象。
官网的资源体验
华为官网为用户提供了便捷的体验途径。官网上有可供直接下载的Demo,方便用户进行试用。若想深入了解代码的运行机制,官网还提供了可下载的代码实例。这样的服务极大地便利了开发者。无论是像我在项目开发中急需寻找新方案时,还是其他时间充裕希望深入研究时,都能迅速上手并体验。只需到官网下载Demo或示例代码,就能感受到其真实效果。
-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.hianalytics.android.**{*;}
-keep class com.huawei.**{*;}
开发准备环节
开发准备阶段的具体步骤相当清晰。首先需要进行安装,只需访问官方网站,根据提供的下载链接下载安装程序即可。此外,安装流程还附有参考链接,操作简便,轻松就能完成。
在项目层面,加入华为的maven仓库是至关重要的步骤。需严格按照规定逐步添加maven地址。在应用层的构建配置中,必须包含SDK依赖。需注意,SDK分为plus版和普通版。我根据实际需求选择了plus版,尽管它体积较大,但我更看重其优越的效果。大家可以根据自身需求自行挑选版本,别忘了填写最新版本号。此外,别忘了添加混淆配置,直接复制华为官网提供的混淆代码即可。最后,别忘了申请静态权限和进行扫码页面的声明,使用相关特性时也要留心。在标签内不要忘记添加对扫码页面的声明。
代码开发流程
在代码开发阶段,我们得首先进行动态权限申请。这项操作是在启动扫码功能时执行的。接着,在权限申请的回调函数里,我们启动扫码界面。我们还可以设定扫码的格式,比如我选择的是QR码。当然,如果有人有其他需求,也可以自行调整,指定成其他类型的码。
评论区见。在回调函数中,我们最终获取到了二维码的扫描结果。实际上,整个代码的开发过程并不繁琐。完成这一系列操作后,一个功能强大的停车场扫码收费APP便应运而生。大家是否认为,从ZXing转换到华为ScanKit这一选择是明智的?看到如此出色的效果,作为开发者,你是否愿意尝试一下?欢迎点赞、分享,并在评论区分享你的观点。