【问题标题】:Can I use a Zebra scanner package with Expo project in React Native?我可以在 React Native 中将 Zebra 扫描仪包与 Expo 项目一起使用吗?
【发布时间】:2020-04-02 12:06:43
【问题描述】:

我们需要在计划使用 React Native 构建的 Android 应用中使用 Zebra 扫描仪(带激光/非摄像头的条形码扫描仪)的 npm 包。现在 Expo CLI 似乎是可行的方法,但经过一些快速研究,我们不太确定这是否可能 - 将这个 zebra 包包含在 Expo 项目中。你能确认是这种情况吗?

我问是因为以下关于使用 Expo 的事实:

  • 您无法添加本机模块(对某些人来说可能会改变游戏规则)
  • 您不能在 Objective-C/Java 中使用使用本机代码的库

应用程序应允许用户使用运行 Android 操作系统的 Zebra 扫描仪扫描条形码并返回扫描数据。

包链接:https://www.npmjs.com/package/react-native-zebra-scanner

【问题讨论】:

  • 在这个包中,您需要更改 android/settings 文件中的某些内容,而在使用 expo 时您没有这个。要使用这个包,你必须从 expo 中导出。
  • 我是这么认为的。谢谢你。

标签: android react-native expo barcode-scanner


【解决方案1】:

对于仍在尝试在 Expo 中使用激光扫描仪的任何人,我在我的特定设备上找到了一种解决方法。

  1. 在设备上的应用程序中,有一个“扫描仪”应用程序,其中包含扫描设置。

  2. 有一个“输出模式”设置,其中有几个选项。我的默认选项设置为“广播模式”,这在博览会应用程序中不起作用。但是,更改为“键盘模式”有效。

  3. 我注意到的不同之处在于“键盘模式”只是读取条形码并输入文本,扫描后不会换行。为了解决这个问题,还有另一个称为“附加后缀”的设置,可以设置为设备的回车键。因此,每当扫描完成时,它会自动转到下一行。

  4. 现在,当您在 Expo 中实现您的应用时,您可以创建一个“TextInput”并在该 TextInput 的“onSubmitEditting”中调用您的函数。

  5. (可选)我已将 TextInput 的“autoFocus”设置为“True”,以便能够在页面显示后立即进行扫描,并将“blurOnSubmit”设置为 False 以保持专注于 TextInput扫描完成并调用函数后。这允许进行多次扫描,而不必每次都单击 TextInput。

让我知道它是否适合你:)

【讨论】:

    【解决方案2】:

    @yeslamFaded - 根据答案: 在这个包中,您需要更改 android/settings 文件中的某些内容,而在使用 expo 时您没有这个。要使用这个包,你必须从 expo 中导出

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 1970-01-01
      • 2019-06-08
      相关资源
      最近更新 更多