SocketMobile扫描仪:如何检测条形码或QR扫描?

时间:2017-06-19 08:07:07

标签: socketscan socketmobile

我在iOS应用程序的SPP(应用程序模式)中使用SocketMobile扫描仪7Xi。我已经整合了scanapisdk SDK。

在扫描条形码或QR代码时,会调用代理:

- (void) onDecodedDataResult:(long)result device:(DeviceInfo *)device decodedData:(ISktScanDecodedData*)decodedData { NSString * scannedText = [NSString stringWithUTF8String:(const char *)[decodedData getData]]; }

在这里,我如何知道条形码或QR上是否发生扫描?

我想检测是否扫描了条码或QR。

有可能吗?

1 个答案:

答案 0 :(得分:1)

ISktScanDecodedData有两种方法可用于确定条形码类型

  • getSymbologyName - 返回一个int
  • - (void) onDecodedDataResult:(long)result device:(DeviceInfo *)device decodedData:(ISktScanDecodedData*)decodedData { NSString * scannedText = [NSString stringWithUTF8String:(const char *)[decodedData getData]]; int symbologyId = [decodedData getSymbologyID]; if (symbologyId == ISktScanSymbology.id.kSktScanSymbologyQRCode) { // do something } else if (symbologyId == /* INSERT "BARCODE" SYMBOLOGY ID HERE */ ) { // do something else } } - 返回一个字符串

我建议使用第一个,因为名称可能会发生变化。

{{1}}

如果是"条形码"你的意思是任何线性条形码(a.k.a one-dimensional barcode),你需要在代码中指定所有不同的buildship plugin and eclipse version