stripe / stripe-terminal-ios

Stripe Terminal iOS SDK
https://stripe.com/docs/terminal/sdk/ios
Other
104 stars 64 forks source link

Connection status hangs on Connecting on ReaderUpdate LowBattery #127

Closed choang10 closed 2 years ago

choang10 commented 2 years ago

Summary

When attempting to connect to the simulated reader with SCPSimulateReaderUpdate set to LowBattery, my integration fails with error as expected in didUpdateDiscoveredReaders but the SCPConnectionStatus hangs on Connecting status. I would expect the status to be reverted to NotConnected to allow for retrying after the card reader has been charged sufficiently or with another reader. Is there a way to manually set the connection status or is there perhaps a step I'm missing in handling the issue?

Code to reproduce

iOS version

iOS 15

Installation method

CocoaPods

SDK version

2.2.0

Other information

jil-stripe commented 2 years ago

Hi @choang10! You're not missing anything - this is a bug in that version of the SDK. We fixed this bug in 2.3.0, so if you update to 2.3.0 or later, you'll see more accurate behavior when simulating a failed update.

This bug only affects the simulator, so even if you stick with 2.2.0, the SCPConnectionStatus won't hang on .connecting when you encounter this scenario with a real reader.

Thanks for writing in - let me know if it's still not working for you after the update!

choang10 commented 2 years ago

Hi James, Thanks for your quick reply. I can confirm the SDK behaves as expected in 2.3.0, thanks for your help! Closing now.