套接字移动扫描仪 :如何检测条形码或QR被扫描



我在 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。

可能吗?

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

  • getSymbologyID - 返回一个 int
  • getSymbologyName - 返回一个字符串

我建议使用第一个,因为名称可能会更改。

- (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
    }
}

如果"条形码"是指任何线性条形码(又称一维条形码(,则需要在代码中指定所有不同类型的线性条形码

最新更新