I am currently using .subscriptionStatusTask on the main view for my app. Everything seems to be working pretty well so far with my testing in Xcode. However, when I popped this over to TestFlight, I notice that I’m getting some “lag” between once I “buy” a subscription and when .subscriptionStatusTask kicks off after it notices the change. In other words, it takes a few seconds before my app knows that it’s the “Pro” version and not the initial non-subscription version (I set a published variable indicating pro or not pro). So my questions are:
- Is this normal behavior? Should there be a bit of a lag?
- Should I just set my published var to true as soon as a successful purchase happens? Note: I’m using .manageSubscriptionSheet; so, there doesn’t seem to be a way to set this variable if the user resubscribes or upgrades their subscription from there.
- Is there a way to somehow set a ProgressView while .subscriptionStatusTask is loading/thinking? Since it’s a modifier and I’m setting the published “pro” var within the closure, I can’t seem to actually get this to work properly. I tried setting a progress view status type flag to true when .subscriptionStatusTask kicks off but I can’t seem to find a way to properly reset the flag so that it knows that it’s finished and the progress view goes away.
Thoughts? Suggestions?