2017-06-19 17 views
0

iOSアプリでSPP(Application Mode)でSocketMobileスキャナ7Xiを使用しています。私はscanapisdk SDKを統合しました。スキャンバーコードまたは委任下記のQRコードをSocketMobile Scanner:バーコードやQRを検出する方法はスキャンされますか?

が呼び出されます。ここでは

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

、どのように私は、スキャンがバーコードやQRに起こったかどうかを知ることになるだろうか?

バーコードまたはQRがスキャンされたかどうかを検出する必要があります。

可能ですか?

答えて

1

ISktScanDecodedDataはあなたがバーコードの種類

  • getSymbologyIDを決定するために使用できる2つのメソッドを持っています - 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 
    } 
} 

あなたは(1次元バーコードa.k.a)任意の線形バーコードを意味し、「バーコード」によるならば、あなたのコード

内のすべての異なる types of linear barcodesを指定する必要があります
関連する問題