purchases-flutter icon indicating copy to clipboard operation
purchases-flutter copied to clipboard

MacOS two factor window is sized wrong and is jumpy, see video

Open sgehrman opened this issue 3 months ago • 5 comments

‼️ Required data ‼️

Do not remove any of the steps from the template below. If a step is not applicable to your issue, please leave that step empty.

There are a lot of things that can contribute to things not working. Having a very basic understanding of your environment will help us understand your issue faster!

Environment

  • [x] Output of flutter doctor [✓] Flutter (Channel stable, 3.19.2, on Debian GNU/Linux 12 (bookworm) 6.1.0-18-amd64, locale en_US.UTF-8) [✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0) [✓] Chrome - develop for the web [✓] Linux toolchain - develop for Linux desktop [✓] Android Studio (version 2023.1) [✓] VS Code (version 1.87.0) [✓] Connected device (2 available) [✓] Network resources

  • [ ] Version of purchases-flutter latest 6.23.0

  • [ ] Testing device version e.g.: iOS 15.5, Android API 30, etc.

latest macos

  • [ ] How often the issue occurs- every one of your customers is impacted? Only in dev?
  • [ ] Debug logs that reproduce the issue
  • [ ] Steps to reproduce, with a description of expected vs. actual behavior

happens only first time you try and purchase, this two factor dialog comes up

Other information (e.g. stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc.)

Describe the bug

Screenshot 2024-03-11 at 08 07 20

https://github.com/RevenueCat/purchases-flutter/assets/287137/1e035a3c-cd2e-4480-8ad4-0e3678444ca4

Once you do this two factor window once, the second time I test everything seems to work fine. So if you want to reproduce this you'll have to set it up fresh so you get that two factor window.

Additional context

This also happens with in_app_purchase. But in any case both are unusable and buggy, so I need help.

This was tested on two different macs, so it's not just my machine.

sgehrman avatar Mar 12 '24 19:03 sgehrman

👀 We've just linked this issue to our internal tracker and notified the team. Thank you for reporting, we're checking this out!

RCGitBot avatar Mar 12 '24 19:03 RCGitBot

I'm trying to ship an app. Does this work on macOS at all? I just signed up. You guys said 'excellent support', frequent updates and that it would take a few hours to get working. It's been days and I can't get it working.

@vegaro @tonycosentini @daentech

sgehrman avatar Mar 13 '24 00:03 sgehrman

Hi @sgehrman,

This window is out of RevenueCat's control, it's a MacOS screen that is controlled by the OS. RevenueCat's SDK asks the system to initiate a purchase and the system determines you have 2FA enabled and displays that screen, which is indeed buggy.

The fact that it also happens with in_app_purchase plugin confirms this is coming from the OS as well.

We will open a bug with Apple to let them know and hopefully they'll fix it in an upcoming update.

Are you in the latest MacOS version in both computers where you're seeing this issue?

Thanks for understanding, Cesar

vegaro avatar Mar 13 '24 06:03 vegaro

yeah, latest macOS.

If you knew it was buggy, you should have filed a dts report long ago, Is this broken for every macOS app or just Flutter apps? ask dts if there is a work around.

sgehrman avatar Mar 13 '24 19:03 sgehrman

~@sgehrman I'm not clear on what the bug is, could you clarify? The OS asking for a 2-factor authentication the first time seems fairly standard~

Edit: now I see, it's about the sizing and positioning. Yeah, that would be an OS-level bug, but we haven't encountered it before. Note that this kind of prompt tends to behave differently across OS versions and especially across different environments (Sandbox, Production).

The good news is that this kind of prompt wouldn't typically happen very often for an end user - they'd set up the account on device, get the prompt the first time on the first app that uses it, and then things would work without the prompt until the OS decided that it needed to check 2FA again.

aboedo avatar Mar 14 '24 12:03 aboedo