当前位置: 首页 > 知识库问答 >
问题:

使用react native进行条形码扫描

上官斌
2023-03-14

我正在使用react native camera为Android和iOS构建条形码扫描仪。

我可以在iOS中扫描条形码,但问题是扫描边界没有视觉效果。我希望整个屏幕能够扫描条形码,而不仅仅是屏幕中间。

有什么办法吗?如果有其他图书馆也适合我。

共有3个答案

邬英武
2023-03-14

有一个react原生库用于扫描二维码,通过上下移动的动画扫描条高亮显示扫描区域。

您可以使用isShowScanBar属性来显示扫描条,或者通过向该属性传递false来禁用。

Github链接https://github.com/shifeng1993/react-native-qr-scanner#readme

npm也在这里https://www.npmjs.com/package/react-native-qr-scanner

这里列出了道具https://www.npmjs.com/package/react-native-qr-scanner#qrscanner

首先,安装react本机相机库,因为该库依赖于它。

只需在项目的根目录下运行此命令即可

然后运行这个link命令react-本机链接react-nate-cam

使用从“react native qr scanner”导入:Import{QRscanner}

 <QRscanner onRead={this.onRead}
    cornerBorderColor ='black'
    cornerRadius={40}
    isRepeatScan = {true}
    cornerBorderRadius={40}
    cornerColor ='black'
    scanBarColor='black'
    cornerBorderWidth={10}
    cornerBorderLength={60}
    hintText="Please Align QRCode"
    renderBottomView={this.bottomView} flashMode={this.state.flashMode}
    finderY={50}/>

 onRead = (res) => {
   alert(JSON.stringify(res))
}

它适用于Android和iOS

微生烨然
2023-03-14

我建议使用React Native社区的React Native摄像头。它维护得很好,您只需传递回调道具即可接收输出:

<代码>

当在摄像机视图中检测到条形码时,将调用您的回调。从文档中:

事件包含数据(条形码中的数据)和类型(检测到的条形码类型)。

詹夕
2023-03-14

好吧,我花了一整天,但我终于找到了一个有效的库。如果有人在这里找到了他们的方式,并且正在寻找一个在android上工作的反应原生条码扫描器......我是来帮忙的。

https://github.com/ideacreation/react-native-barcodescanner

第一,如果你没有rnpm得到它...这是非常有帮助的!(npm install-g rnpm)(https://github.com/rnpm/rnpm)

然后在您的项目文件中运行这些命令:

npm安装-保存反应本机-barcodesanner

rnpm链路反应本机条形码扫描仪

在这一点上,我同步了gradle并从android Studio重新运行了应用程序。。。不确定是否需要(有时rnpm链接会忘记一个新行字符…如果您有一条关于单词include的错误消息,这是因为…只需在setting.gradle文件中找到它,在单词include之前添加新行)

现在可以使用了。

导入它:

import BarcodeScanner from 'react-native-barcodescanner';

然后在渲染函数的返回语句中使用它:

<BarcodeScanner
    onBarCodeRead={this._BarCodeRead}
    style={styles.preview}
    torchMode='off'
    cameraType='back'
  />

如果你需要更多信息,请查看该链接。我希望这能帮助一些人避免我在一个又一个不起作用的旧图书馆里忍受的折磨。

快乐编码!:)

 类似资料:
  • 使用ML Kit的条码扫描API,您可以读取大多数使用标准条码格式编码的数据。 条形码是将信息从现实世界传递到应用程序的一种便捷方式。特别是,使用QR码等二维格式时,您可以编码结构化数据,如联系人信息或WiFi网络凭证。由于ML Kit可以自动识别和解析这些数据,因此当用户扫描条形码时,您的应用可以进行智能响应。 iOS Android 关键功能 阅读大多数标准格式 线性格式:Codabar,Co

  • 所以,我正在尝试使用我的条形码扫描器作为一个‘串行’设备,而不是一个键盘模拟器,但它没有创建com端口。我已经从手册上扫描了设置代码,将其设置为串行设备,这似乎正确配置了扫描仪(它停止将扫描代码发送到文本框\文本编辑器),但因为没有COM端口,所以我扫描条形码时无法捕获数据...... Windows在第一次插入时安装了驱动程序,但没有提供磁盘\驱动程序...不知道还有没有人经历过同样的问题...

  • 您可以使用ML kit来识别并且解码条码。 有关此API使用的示例,请参阅GitHub上的ML Kit快速入门示例。 在开始之前 如果您还没有将Firebase添加到您的程序当中,那您可以从开始指南来开始您的工作。 将ML kit库放进您的Podfile中: pod 'Firebase/Core' pod 'Firebase/MLVision' pod 'Firebase/MLVisionBarc

  • 我正在为平板电脑开发一个android应用程序(SynchroDigital iNOSP10-4.0 RES型号),我想使用ZXing库扫描包含字符串的QRcode。它会在我需要时启动扫描仪,但我无法扫描任何东西。 实际上,如果我直接使用条形码扫描仪应用程序,它甚至不起作用,黄色的点出现了,但什么也没有发生,无论亮度、距离或二维码的复杂性(尝试使用一个只包含字母“a”的巨大二维码),它都不会起作用

  • 您可以使用ML kit来识别并且解码条码。 有关此API使用的示例,请参阅GitHub上的ML Kit快速入门示例。 在您开始之前 如果您还没有将Firebase添加到您的程序当中,那您可以从开始指南来开始您的工作。 在app-level的build.gradle 文件中为ML kit添加依赖: dependencies { // ... implementation 'com.goog

  • 我试图启动条形码扫描器上的用户按下一个按钮在HTML。然而,我又犯了一个错误: 在javascript中使用: 现在,在Java文件中,我有以下代码,它在中声明函数