我可以在React Native的Expo项目中使用Zebra扫描仪软件包吗?

时间:2019-12-09 11:33:14

标签: android react-native expo barcode-scanner

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

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

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

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

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

2 个答案:

答案 0 :(得分:1)

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

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

    App Icon View

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

    Output Mode Setting View

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

    Append Suffix Setting View

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

    TextInput onSubmitEdditing

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

    Optional Settings

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

答案 1 :(得分:0)

@yeslamFaded-根据答案: 在此软件包中,您需要在android / settings文件中进行更改,而在使用expo时则没有此内容。要使用此软件包,您必须从expo中退出