最近公司开始做 APP ,需要兼容 ANDROID 和 IOS 两大平台,考虑到 React Native 现在用的比较热,填坑速度也比较快,就选用了 React Native 。项目中有二维码扫描需求,就去搜了下相关库,最终在 github 上找到了 https://github.com/ideacreation/react-native-barcodescanner ,在 android 上用的是 Zxing 库。但是它是自己初始化摄像头之类的,实现的比较简单,并没有使用 Zxing 的实现实例方案,扫描条形码有 BUG (竖屏扫描二维码,只能扫竖向的二维码)。其实 ZXing 本来就有这个问题,但网上有解决方案,所以看着不爽,就去自己把 ZXING 的 BUG 解了后,裁剪,裁剪,再裁剪(保留了大部分的可选设置),然后把它塞到 react-native-barcodescanner 的外壳里去,然后成功啦。因为 ZXING 解码库有 BUG , jar 包需要重新编译, jar 包打出来有一百多兆,今天花了一天时间才把 JAR 包上传到 github 上去(主要是翻墙姿势不对)。
求 star,求 star,求 star(重要的事情说三遍),欢迎拍砖。
说明:
1.只实现了 android 部分(这星期刚学的 react native,只会 android,不懂 ios )
2.条形码只能横屏识别
3.有坑大家一起填
最后奉上地址: https://github.com/zgc2537/react-native-barcodescanner
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.