SwiftGS1Barcode icon indicating copy to clipboard operation
SwiftGS1Barcode copied to clipboard

Wrong parse ios 16+

Open ButasButora opened this issue 1 year ago • 14 comments

Hello, we encountered a problem parsing the code: 01087151310160672193220152971117250131101149213A where it was parsed as follows: SN:93220152971117250131 GTIN: 149213A Date: was not parsed correctly A proper parsing should look like this: SN: 93220152971 GTIN: 1149213A Date: 01/2025 I am attaching an image of the code. What is the possible solution? The issue appears on IOS 16+ IMG_0011 tempImageZ0L8W5

ButasButora avatar Sep 27 '22 08:09 ButasButora

tested od IOS version 20A362 and 20A380 with same result..

ButasButora avatar Sep 27 '22 09:09 ButasButora

I noticed that the error occurs if the code contains PC, SN, LoT/GTIN, Date...

ButasButora avatar Sep 27 '22 10:09 ButasButora

Now tested on IOS 1620B5050F - 16.1 Beta Dev. 2 and it works fine... so it must be some issue in other versions - be careful!

ButasButora avatar Sep 27 '22 11:09 ButasButora

We have the same issue. We are scanning with Vision library. The issue only appears in iOS 16 versions. We haven't tried the beta. It looks like an Apple issue that is going to be fixed. I will try the Beta dev version and confirm too.

AresProductions avatar Sep 28 '22 07:09 AresProductions

@ButasButora @AresProductions thanks a lot for letting me know about this. This seems to be critical. I just pushed an update to the library a couple of days ago. Do one of you know if this issue also occurs with the previous version of the library, or if the update fixed this?

xremix avatar Sep 28 '22 08:09 xremix

It is not a SwiftGS1Barcode issue. Simply because in my case, we're not providing you with the correct "string". When scanning, the string does not contain the Group Separator character (ASCII 29). Thus your algorithm is not able to work.

AresProductions avatar Sep 28 '22 09:09 AresProductions

i noticed you made changes to the code so i rewrote my source code but the problem still persisted.

ButasButora avatar Sep 29 '22 06:09 ButasButora

@AresProductions @ButasButora I get the same issues with my App on iOS 16, which is using the native Scanner from iOS. What is weird, that I couldn't find anything in the Apple Developer forum or stack overflow. Could you?

Is there maybe a new API or new parameters that need to be set on the scanner?!

xremix avatar Sep 29 '22 09:09 xremix

I've posted on StackOverflow without any real answer.

I've also created a feedback ticket for apple. No answer yet, but if more feedback tickets about the issue come up, they might address it sooner.

AresProductions avatar Sep 29 '22 09:09 AresProductions

@AresProductions please, can you give here a link for your apple ticket ?

ButasButora avatar Sep 29 '22 09:09 ButasButora

Unfortunately, It is not public, you need the organization's access. It's identical to the StackOverflow ticket though.

AresProductions avatar Sep 29 '22 10:09 AresProductions

@AresProductions @ButasButora one thing I don't get... with the same device and same App and iOS 16 I can scan the sample of @ButasButora of #25 including the Group Seperators. Does this make sense to you guys?

xremix avatar Sep 29 '22 17:09 xremix

@AresProductions @ButasButora @xremix

We had the same issue, after we updated our test device to iOS 16.0.2 our app stopped reading 2D barcodes properly (both QR Code and Data Matrix). On iOS 15, there was no issue detecting FNC1 character within the encoded data, which is used to read different GS1 elements. After the update, the app was unable to correctly detect the FNC1 character as well as other issues, which caused the workflow to be broken.

Today, we installed iOS 16.1 beta 3, I confirm that the app is working properly as intended, and the scanner is able to detect FNC1 character successfully. Everything went back to normal.

markerio avatar Oct 02 '22 20:10 markerio

IMG_2884

Attached is the image: Your gs1 datamatrix is correct and follow the gs1 standard.

If you look at the raw data, your issue happened is becos of “LotNo” and has variable length.

follow by the expired date .. so in between there are a “FNC1” code or in image using [GS] to represent..

so issue is that decode did not read the “FNC1” or data pass to this program the “FNC1” is pass wrongly.

Ask him any questions on gs1 datamatrix

Hope it can solve your problem!

www.gs1reader.com

techcovedexter avatar Aug 08 '23 19:08 techcovedexter