想在手机(三星S6)上使用ZEBRA EMDK通过相机作为扫描仪进行条形码扫描

问题描述 投票:0回答:1

1.我在清单文件中添加了以下行

<uses-library android:name="com.symbol.emdk" android:required="false" />

2.我根据我的目录路径添加了以下依赖项

dependencies {
provided fileTree(include: ['com.symbol.emdk.jar'], dir: 'C:\\Users\\<YOUR USER NAME>\\AppData\\Local\\Android\\sdk\\add-ons\\addon-symbol-emdk_v4.2_API-19\\libs')
compile fileTree(exclude: ['com.symbol.emdk.jar'], dir: 'libs')}
  1. 我已按照以下存储库添加了“BarcodeScanEngine”类(https://gist.github.com/esquijarosa/1c79059c8833f922af945fa0719fad80
  2. 现在,问题是当我在 MainActivity 类上为 BarcodeScanEngine 创建对象时,它给出的运行时错误为

java.lang.NoClassDefFoundError:com.sample.zebrascanengine.BarcodeScannerEngine ...

所以,我的问题是我是否做了一些根本错误的事情,因为我不应该在手机上使用 EDMK?或者我错过了一些东西来消除错误?

android
1个回答
3
投票

Zebra 的 EMDK 只能在 Zebra 设备上使用。
可以有一个使用 EMDK 的应用程序在消费设备(例如您的 Samsung S6)上运行,但前提是您避免对 EMDK 库进行任何调用。

这个想法是,您的 MainActivity 需要检查 EMDK 库在设备上是否可用,并且只有在此时您才实例化 BarcodeScanEngine 类。

您可以在 Zebra 的 EMDK 参考指南中找到更多相关信息。

免责声明:我在 Zebra Technologies 工作。

© www.soinside.com 2019 - 2024. All rights reserved.