CatimaLoyalty / Android

Catima, a Loyalty Card & Ticket Manager for Android
https://catima.app
GNU General Public License v3.0
838 stars 151 forks source link

UPC_E not displayed #252

Closed sphh closed 3 years ago

sphh commented 3 years ago

I finally got my ‘EU Digital COVID Certificate’ with a huge QR code.

I thought, it would be a good idea to put this code into Catima, so that I have it with me all the time. I could scan it from inside Catima and it tells me, that it is a UPC_E code. Unfortunately Catima can not display it.

Do you think, this can be solved? Could you also give this a high priority, since I believe more and more people would like to but this code into their wallet? Thanks!!!

TheLastProject commented 3 years ago

So... it turns out support for UPC-E was added to zxing years ago but it was just not noticed and never enabled in Catima. I enabled it now and created #253.

I've attached a debug build with UPC-E support, could you confirm if it also works for your QR code? If so, I'll include this support the next release.

app-debug.zip

sphh commented 3 years ago

Oh, that was quick!

The good news is, that I can select the UPC-E barcode and that the value is displayed.

The bad news is, that Catima reads the QR-code but thinks it is a UPC-E barcode, so it looses a lot of characters. Even if I then select QR code to be displayed, it is the smallest QR code I have seen with just 8 digits.

I then scanned the QR code with SecScanQR, copied the scanned value to Catima and used this to set the barcode value with display type QR code. This works (well, I get a QR code displayed, have not tested it, if it is valid).

It looks to me, that Catima detects the QR code as a barcode …

sphh commented 3 years ago

I just checked the generated QR code (which is different to the scanned) and I can confirm, that it works.

TheLastProject commented 3 years ago

Could it have been bad lighting conditions? SecScanQR uses the exact same library as Catima, so it would surprise me if Catima really misunderstands the QR code while SecScanQR doesn't. I managed to scan my own COVID QR code from https://coronacheck.nl/en/print/ just fine.

sphh commented 3 years ago

Maybe …

I scanned the code with Catima and Catima debug and both times I got a UPC-E barcode. SecScanQR gave a QR code.

Now I tried it again with the desk lamp very close. Here I got unreliable results with both programs (Catima and SecScanQR). I believe we can say, that this looks like a camera problem indeed (my camera is not the best and rather low resolution).

Should we close this issue? (But thanks for implementing UPC-E barcodes, even if this was not the original problem!!!)

TheLastProject commented 3 years ago

Yeah, I think #249 should help make scanning more reliable under different lighting conditions.

I'll close the issue yeah, but thanks for helping me fix an unrelated bug :)

djechelon commented 3 years ago

I successfully showed the QR at least a couple of times and was allowed in. Catima is now my (easier-to-use) official EU digital pass wallet despite having another official open source wallet app. Scanned with Verifica C19

Just wanted to share this information. I understand the topic may be a bit oudated.

sphh commented 3 years ago

Yesterday I had my first successful scan myself.

Previously the green pass QR was mainly visually inspected and deemed as valid!:roll_eyes:

On two occasions the scan failed, because the other smart phone could not read the QR code. The possible reason is, that the edges of the code displayed are fuzzy – maybe because of my tiny screen?

TheLastProject commented 3 years ago

Catima should make sure the codes aren't blurry no matter the screen size though. That should be a new issue then

sphh commented 3 years ago

Regarding the blurred QR code, see #329.