Solved

iOS 15.4 Redeem Cod bug


Badge +1

Hey All,

We’re noticed a bug appear on devices running iOS 15.4 having issues when trying to present the store code redemption sheet using the RevenueCat iOS SDK (3.14.1).

Purchases.shared.presentCodeRedemptionSheet()

The presentation sheet appears, however the expected redeem code page is missing. Instead we’re presented with a “Cannot Connect” with the retry button not performing any action.

This is repeatable on all devices running 15.4 and only appears after the update from 15.3.1.

Does migrating to the the most recent 4.1.0 release fix this issue for devices on iOS 15.4?

Thanks

 

icon

Best answer by Andy 22 March 2022, 20:36

View original

32 replies

Badge +4

Hello. We are having the same issue and opened https://github.com/RevenueCat/purchases-ios/issues/1404

Userlevel 5
Badge +8

Hi! 👋🏻 Thanks for reporting! 

Sadly the bug is a part of iOS 15.4 itself, so updating to 4.1.0 won’t fix it. We’ve reported it to Apple and we will just have to wait for it to get fixed 😢

 

Badge +2

Hi! 👋🏻 Thanks for reporting! 

Sadly the bug is a part of iOS 15.4 itself, so updating to 4.1.0 won’t fix it. We’ve reported it to Apple and we will just have to wait for it to get fixed 😢

 

Hey Andy, I was going to ask about that and saw this post. When (if) they fix that, would it be on your side (i.e., do I need to update to a newer version of your SDK -I´m using CocoaPods-) or do I just need to wait for another iOS release?

 

Thanks

Userlevel 5
Badge +8

Update here: the iOS bug has been fixed, so `presentCodeRedemptionSheet()` now works as expected on all OS versions. 

 

@balsalobre I’m sorry I missed your reply! The answer is that you don’t need to do anything - this will automatically work on all SDK versions, no action needed 😃

 

Let me know if you run into anything else!

 

 

Badge +5

Update here: the iOS bug has been fixed, so `presentCodeRedemptionSheet()` now works as expected on all OS versions. 

 

@balsalobre I’m sorry I missed your reply! The answer is that you don’t need to do anything - this will automatically work on all SDK versions, no action needed 😃

 

Let me know if you run into anything else!

 

 

Hello Andy, 

I’m on 15.4.1 and this issue is happening to me. Any updates or news about this bug as of today? Is this an Apple Bug, or RevenueCats ? How can I fix this ?

Userlevel 5
Badge +8

After more testing, it seems like it’s now not working in Sandbox but working correctly in Production. 

There’s nothing to do on your side, we’re in touch with Apple through the radar but ultimately the fix will have to come from them

Badge +5

After more testing, it seems like it’s now not working in Sandbox but working correctly in Production. 

There’s nothing to do on your side, we’re in touch with Apple to help them reproduce but ultimately the fix will have to come from them

Thank you, 

Does look like it is a Sandbox issue. Just downloaded the app and it works on production. 

Thank you

Badge +5

I’m getting the same issue and I’m running a production app in iOS 15.5. Not sure if this is an Apple issue or a RevenueCat issue

Userlevel 5
Badge +8

@Jordan Peterson for this particular feature, our SDK forwards the call to iOS, so it’d be an Apple issue. 

Could you tell us more about it, though? Are you seeing the CANNOT_CONNECT screen on iOS 15.5 on production? Or is it a crash? 

Badge +5

@Andy its not crashing. It’s showing a “Cannot Connect” screen with a retry button. I appreciate you letting me know that it’s an Apple issue! 

 

Userlevel 5
Badge +8

Thanks for the follow-up! I’m surprised to see that tbh because it had stopped happening in production for 15.5 (it was still a problem in sandbox). 

Does rebooting help? I wonder if there might be something cached on device, I just tried it on my 15.5 device on production and it did load correctly, even after rebooting. 

 

Badge +2

This has been happening to me for about a week in production (app store) too. I doubt that it’s something cached on the app because I have deleted and reinstalled multiple times. I just get a “Cannot Connect” message. It’s particularly painful to work on since none of this is testable in dev environments.

We know that isn’t related to revenue cat, but right now this is the most active discussion about that bug.
So we are also experiencing the same bug while trying to redeem a subscription code in production.

Affected versions: 15.5

Where it works: 14.2, 14.4, 15.3.1

Someone reported that 15.5 works again, but we can not confirm this.

Badge +5

@Andy I have tried rebooting the device and I’m getting the same results. Unfortunately this seems to be happening on multiple devices so I don’t believe its a caching issue. 

Badge +5

This is also happening for us on 15.5 in production. Getting the same “Can’t connect’ screen on submission. A few users have reported it as well.

Userlevel 5
Badge +8

Thanks everyone for reporting! We’ll re-open a radar to escalate this to Apple. Hopefully it gets addressed soon.

Badge +5

Thanks @Andy! Really appreciate the help :) hopefully Apple fixes this soon 

Badge +4

Hello thank you we are facing same issue since yersterday on production. many users have reported the issue on our application… Thanks @Andy for helping us to report the issue. I have called them but it seems they don’t know anything about the issue...

Badge +4

Hello @Andy any news regarding your ticket ? Thanks

Userlevel 5
Badge +8

@Spot On Travel Nothing to report yet, sadly. I’ll update here when we hear back

Badge +4

We have been also facing this issue for over a week in Production. Any update from anyone getting a response from Apple would be appreciated. 

Userlevel 5
Badge +8

We haven’t heard back from our radar yet. 

Honestly folks, this API has proven to be pretty unreliable over time. I’d recommend doing promo offers by redirecting customers through the App Store with the code URL, instead of using `presentCodeRedemptionSheet`. 

We updated our docs https://docs.revenuecat.com/docs/ios-subscription-offers#option-1-in-app-redemption-sheet to reflect that. The approach I mentioned is “Option 2”. 

Badge +4

Thanks @Andy  for the tips. It works fine

Badge +5

@Andy , I have the same problem  , option 2 it is not easy for the users because they have to subscribe before then apply the code
why presentCodeRedemptionSheet not work ?

Userlevel 5
Badge +8

`presentCodeRedemptionSheet` works, but in our experience, it’s not particularly reliable. To be clear, this is an API that we bridge over from Apple directly, and the unreliable bits are coming from iOS itself. 

Our customers have reported issues with presentCodeRedemptionSheet like: 

  • the sheet may not connect
  • the sheet may not dismiss after a successful redemption
  • the sheet may not accept valid codes
  • sandbox and TestFlight behavior has been seen to be inconsistent.

Reply