question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

<PaymentCardTextField /> locks up iOS apps on tipsi-stripe v6

See original GitHub issue

Before I have submitted the issue

[X] I have read an installation guide
[X] I know that for an iOS I need to install pods because I’ve read the installation guide
[X] I have read a linking guide and checked that everything is OK like in manual linking guide
[X] I know that before using tipsi-stripe I need to set options for my app as described in usage guide

The problem

<PaymentCardTextField /> locks up iOS applications after upgrading tipsi-stripe from 5.6.0 to 6.1.2 and upgrading the iOS Stripe SDK from 11.2.0 to 13.2.0. The issue does not impact Android.

Environment

  • tipsi-stripe version: 6.1.2
  • Last tipsi-stripe version where the issue was not reproduced (if applicable): 5.6.0
  • iOS or Android: iOS
  • OS version: 12.1
  • React-Native version: 0.57.5
  • (Android only) com.google.firebase:firebase-core version:
  • (Android only) com.google.android.gms:play-services-base version:

Screenshots, GIFs (Must to have)

image

Code To Reproduce Issue (Good To Have)

Issue can be replicated by creating a new react native project and attempting to run the example code (https://tipsi.github.io/tipsi-stripe/docs/paymentcardtextfield.html) on a device or in simulator

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:13
  • Comments:37 (12 by maintainers)

github_iconTop GitHub Comments

12reactions
theohdvcommented, Dec 14, 2018

I do not really understand why but it seems to be related to those lines

- (void)dealloc {
    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification object:self.window];
}

&

[[NSNotificationCenter defaultCenter]
  addObserver:self
  selector:@selector(keyboardWillShow:)
  name:UIKeyboardWillShowNotification
  object:self.window];

Because removing those lines seems to fix the issue. Can someone explain me what is it for ?

I’ve created a PR (#418) to try to fix this.

4reactions
fbarthocommented, Jul 23, 2019

In React-Native 45, they removed a deprecated API that <PaymentCardTextField /> was built on.

This commit: https://github.com/facebook/react-native/commit/bc1ea548d0017f131c36a30ce06bf4d512cb2f8c#diff-3e154f92c7ba4cb47e96785b9dadf3aa

The documentation says we need to support React-Native 40 or later, or we need to make another API breakage (Compatibility Docs)

I have a minimal fix that appears to work, but I’m not really set up to test this all the way back to React-Native 40.

I’ve opened a PR for comment: https://github.com/tipsi/tipsi-stripe/pull/508 /cc @mindlapse @cybergrind

Read more comments on GitHub >

github_iconTop Results From Across the Web

<PaymentCardTextField /> locks up iOS apps on tipsi-stripe v6
Before I have submitted the issue. [X] I have read an installation guide [X] I know that for an iOS I need to...
Read more >
If an app on your iPhone or iPad stops responding, closes ...
If an app on your iPhone or iPad stops responding, closes unexpectedly, or won't open · Close and reopen the app. Force the...
Read more >
<PaymentCardTextField /> · tipsi-stripe
A text field component specialized for collecting credit/debit card information.
Read more >
Known Issues for the Blackboard App
Update the Blackboard app to v6.11 on an iOS device; Launch the app to add the "Allow Cross-Website Tracking" option to the iOS...
Read more >
Tipsi stripe is not working with iOS and React Native
The tipsi-stripe library is no longer maintained or supported by the developers. You should instead use the official stripe-react-native library following ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found