hhanh00 / zwallet

Zcash and Ycash light shielded wallet
https://ywallet.app
MIT License
41 stars 20 forks source link

QR Codes not parsing on iOS #80

Closed michaelharms6010 closed 10 months ago

michaelharms6010 commented 1 year ago

Subject of the issue

QR's are not scanning in mobile Ywallet Stemming from issue reported here: https://github.com/michaelharms6010/zecpages/issues/118

Your environment

Ywallet v1.3.6 iOS v16.2

Steps to reproduce

  1. Go to https://zecpages.com/z/all
  2. Click "Create a post"
  3. Enter some text
  4. Try to scan the QR to the right

Expected behaviour

A transaction should be prefilled in Ywallet with recipient address, amount, and memo

Actual behaviour

The camera interface never goes away, presumably because the QR is not recognized. (Other QR readers on my phone recognize it instantly)

I get the same behavior (camera interface stays open, nothing seems to scan) with a QR that contains a simple zaddr.

Thank you!

hhanh00 commented 1 year ago

From a quick look at the qr (I didn't try to scan) I think the issue is with the border of the qr code.

I didn't write the qr code reader, it is coming from a popular c library. If it works with some qr code but not others, it is probably an issue with them...

On Tue, May 2, 2023, 5:37 AM Michael Harms @.***> wrote:

Subject of the issue

QR's are not scanning in mobile Ywallet Stemming from issue reported here: michaelharms6010/zecpages#118 https://github.com/michaelharms6010/zecpages/issues/118 Your environment

Ywallet v1.3.6 iOS v16.2 Steps to reproduce

  1. Go to https://zecpages.com/z/all
  2. Click "Create a post"
  3. Enter some text
  4. Try to scan the QR to the right

Expected behaviour

A transaction should be prefilled in Ywallet with recipient address, amount, and memo Actual behaviour

The camera interface never goes away, presumably because the QR is not recognized. (Other QR readers on my phone recognize it instantly)

I get the same behavior (camera interface stays open, nothing seems to scan) with a QR that contains a simple zaddr.

Thank you!

— Reply to this email directly, view it on GitHub https://github.com/hhanh00/zwallet/issues/80, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABWIHZ3TL4PE6Q6PHE3FYLXEAGGFANCNFSM6AAAAAAXSDH2GQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

michaelharms6010 commented 1 year ago

Thanks for the prompt reply. Seems like an ok place to start. I'll see if I can find a way to make it work.

michaelharms6010 commented 1 year ago

I have been unable to get the ywallet qr scanner (what's the library you're using, out of curiosity?) to recognize any QR code, including the one generated by my desktop Ywallet.

hhanh00 commented 1 year ago

Due to this related issue https://github.com/khoren93/flutter_zxing/issues/97 we may have to look for another open source qr code scanner

pacu commented 1 year ago

Hello! I came to report the same issue.

Do we have any estimates on when there's going to be a fix? Can the change be outlined in a GitHub ticket for contributors to send PRs with fixes?

zerodartz commented 1 year ago

can confirm have same problem on iOS 16.5.1 ywallwet 1.3.6 no qr scan works

TimUkrainian commented 1 year ago

Hello,

I confirm that QR code scan on YWallet to YWallet doesn't work.

My IOS and YWallet are up to date.

hhanh00 commented 1 year ago

For more context on this issue: Most barcode libraries use the MLKit on Android to decode the image. Unfortunately, this is not acceptable for a fully open-source app since MLKit is Google proprietary code. At some point, I switched to a port of zxing to flutter but that library is not well maintained anymore because MLKit is usually preferred. Now we can either:

hhanh00 commented 9 months ago

Fixed in 1.4.5