RevenueCat / purchases-ios

In-app purchases and subscriptions made easy. Support for iOS, watchOS, tvOS, macOS, and visionOS.
https://www.revenuecat.com/
MIT License
2.36k stars 319 forks source link

Purchase not working in ios 16 #1951

Closed neowinston closed 2 years ago

neowinston commented 2 years ago

Describe the bug A clear and concise description of what the bug is. The more detail you can provide the faster our team will be able to triage and resolve the issue. 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.

  1. Environment
    1. Platform: iOS
    2. SDK version: latest
    3. StoreKit 2 (enabled with useStoreKit2IfEnabled) (Y/N): Y
    4. OS version: iOS 16
    5. Xcode version: 14
    6. How widespread is the issue. Percentage of devices affected.
  2. Debug logs that reproduce the issue
  3. Steps to reproduce, with a description of expected vs. actual behavior
  4. Other information (e.g. stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, etc.)

Additional context Add any other context about the problem here.

I'm trying to make a purchase using the method below, it prompts me to enter the password, it works fine but the completion block is never called. It seems to be a bug in iOS 16, because in iOS 15 everything works as expected.

I'm using this code to make the purchase:

          [[RCPurchases sharedPurchases] purchasePackage:obj withCompletion:^(RCStoreTransaction *transaction, RCCustomerInfo *customerInfo, NSError *error, BOOL cancelled) {

          }];
RCGitBot commented 2 years ago

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

NachoSoto commented 2 years ago

Thanks for the report!

Can you let us know exactly which version of the SDK are you using? Also please attach debug logs when you reproduce this issue.

Is this on the simulator or a device? What do you mean by "it prompts me to enter the password"?

neowinston commented 2 years ago

The SDK is version 4.12.0 I'm using a device, not a Simulator. It prompts me to enter my Xcode testing password to buy the item, as expected. Right now I'm having issues trying to debug, so later I'll try to add a debugging log.

NachoSoto commented 2 years ago

Can you send us the console debug logs when you go through the purchase?

neowinston commented 2 years ago

The log I'm getting now is this ERROR: 🍎‼️ SKProductsRequest took too long to complete. When the purchase go through it's a different log. The completion block after a successful purchase is never called.

[Purchases] - DEBUG: ℹ️ applicationDidBecomeActive
[Purchases] - DEBUG: ℹ️ CustomerInfo cache is stale, updating from network in foreground.
[Purchases] - DEBUG: ℹ️ Sending latest CustomerInfo to delegate.
[Purchases] - DEBUG: 😻 CustomerInfo updated from network.
[Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Finished
Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d, 0 requests left in the queue
[Purchases] - DEBUG: ℹ️ Offerings cache is stale, updating caches
[Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Started
[Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d
[Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d
[Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d 304
[Purchases] - DEBUG: 😻 CustomerInfo updated from network.
[Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Finished
[Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d, 0 requests left in the queue
[Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Started
[Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d/offerings
[Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings
[Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings 304
Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Finished
[Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d/offerings, 0 requests left in the queue
[Purchases] - DEBUG: ℹ️ Found an existing request for products:

[Purchases] - ERROR: 🍎‼️ SKProductsRequest took longer than 30 seconds, cancelling request and returning an empty set. This seems to be an App Store quirk. If this is happening to you consistently, you might want to try using a new Sandbox account. More information: https://rev.cat/skproductsrequest-hangs
[Purchases] - ERROR: 🍎‼️ SKProductsRequest took too long to complete.
[Purchases] - ERROR: 🍎‼️ Error fetching offerings - A operação não pôde ser concluída. (RevenueCat.OfferingsManager.Error erro 1.)
Underlying error: SKProductsRequest took too long to complete.
[Purchases] - ERROR: 🍎‼️ SKProductsRequest took too long to complete.
[Purchases] - ERROR: 😿‼️ There is an issue with your configuration. Check the underlying error for more details. There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used). 
More information: https://rev.cat/why-are-offerings-empty
[Purchases] - ERROR: 🍎‼️ Error fetching offerings - A operação não pôde ser concluída. (RevenueCat.OfferingsManager.Error erro 1.)
Underlying error: SKProductsRequest took too long to complete.
[Purchases] - ERROR: 🍎‼️ SKProductsRequest took too long to complete.
[Purchases] - ERROR: 🍎‼️ Error fetching offerings - A operação não pôde ser concluída. (RevenueCat.OfferingsManager.Error erro 1.)
aboedo commented 2 years ago

@neowinston looks like this is timing out.

Does this still happen to you if you use a different sandbox account? We've seen some performance differences on StoreKit's side with different sandbox accounts

neowinston commented 2 years ago

Even with a different sandbox account the time out still happens.

Is anyone else having problems trying to make a purchase in iOS 16?

aboedo commented 2 years ago

@neowinston thanks for reporting back! Couple of questions:

neowinston commented 2 years ago

I'm using Wifi connection on my device. How do I update to 4.13.1? I tried pod 'RevenueCat', '~> 4.13.1' but I got:

[!] CocoaPods could not find compatible versions for pod "RevenueCat":
  In Podfile:
    RevenueCat (~> 4.13.1)
aboedo commented 2 years ago

you'd have to update your cocoapods cache, pod install --repo-update or pod repo update && pod install

neowinston commented 2 years ago

Thanks for the code. Now I'm using version 4.13.1 but nothing happens. Here is the debugging log:

[Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings
[Purchases] - DEBUG: ℹ️ Network operation 'GetOfferingsOperation' found with the same cache key '$RCAnonymousID:...'. Skipping request.
[Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings 304
[Purchases] - DEBUG: ℹ️ No existing products cached, starting store products request for: ["..."]
[Purchases] - DEBUG: ℹ️ Found an existing request for products: ["..."], appending to completion
[Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Finished
[Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d/offerings, 0 requests left in the queue
[Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Started
[Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d
[Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d
[Purchases] - DEBUG: ℹ️ applicationDidBecomeActive
[Purchases] - DEBUG: ℹ️ Offerings cache is stale, updating caches
[Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d 304
[Purchases] - DEBUG: ℹ️ Sending latest CustomerInfo to delegate.
[Purchases] - DEBUG: 😻 CustomerInfo updated from network.
[Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Finished
[Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d, 0 requests left in the queue
[Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Started
[Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d/offerings
[Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings
[Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:4546f17f2cf444c8b6d4ca9781f7e70d/offerings 304
[Purchases] - DEBUG: ℹ️ Found an existing request for products: ["..."], appending to completion
[Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Finished
[Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3A4546f17f2cf444c8b6d4ca9781f7e70d/offerings, 0 requests left in the queue
NachoSoto commented 2 years ago

There is no log there saying that a purchase is started, which should be the very first thing that gets called after calling Purchases.purchasePackage:withCompletion: 🤔

neowinston commented 2 years ago

This is the full code I'm using:

 [RCPurchases configureWithAPIKey:@"MY_KEY"];
    [[RCPurchases sharedPurchases] getOfferingsWithCompletion:^(RCOfferings *offerings, NSError *error) {
      if (offerings.current && offerings.current.availablePackages.count != 0) {
        // Display packages for sale
          [offerings.current.availablePackages enumerateObjectsUsingBlock:^(RCPackage * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {

              [[RCPurchases sharedPurchases] purchasePackage:obj withCompletion:^(RCStoreTransaction *transaction, RCCustomerInfo *customerInfo, NSError *error, BOOL cancelled) {

                  NSLog(@">>>>>>>>>>>>>>>> PURCHASED... <<<<<<<<<<<<<");
              }];

          }];
      } else if (error) {
        // optional error handling
          NSLog(@"ERROR...");
      }
    }];
NachoSoto commented 2 years ago

Looks like there's probably no error getting offerings, but also the other condition isn't met: (offerings.current && offerings.current.availablePackages.count != 0)

Could you try logging offerings?

neowinston commented 2 years ago
<Offerings {
    <Offering {
    identifier=english_commentaries
    serverDescription=All English commentaries
"
    availablePackages=[<RCPackage: 0x280e0c500>]
    lifetime=<RCPackage: 0x280e0c500>

    annual=
    sixMonth=

    threeMonth=
    twoMonth=

    monthly=
    weekly=
}>
    currentOffering=<Offering {
    identifier=english_commentaries
    serverDescription=All English commentaries
"
    availablePackages=[<RCPackage: 0x280e0c500>]
    lifetime=<RCPackage: 0x280e0c500>

    annual=
    sixMonth=

    threeMonth=
    twoMonth=

    monthly=
    weekly=
}>>
neowinston commented 2 years ago

Now it logs [Purchases] - INFO: 💰 Purchasing Product

NachoSoto commented 2 years ago

Anything else in the logs below that?

neowinston commented 2 years ago

No, there is nothing below that, and it doesn't prompt me for the payment. I also tried purchase Product with the code below, but it doesn't work either:

    [[RCPurchases sharedPurchases] purchaseProduct:product withCompletion:^(RCStoreTransaction * _Nullable transaction, RCCustomerInfo * _Nullable info, NSError * _Nullable error, BOOL userCancelled) {

        }];
codykerns commented 2 years ago

Hey @neowinston, are you able to reproduce this with one of our sample apps? (just change the bundle ID and API key, then run it on your device)

If so, can you provide full debugs logs? Meaning, from the very start of your app launch, to pressing the 'purchase' button and waiting a bit?

Additionally, can you try creating a new sandbox test account to make the purchase? https://www.revenuecat.com/docs/apple-app-store

LoopingLouieX commented 2 years ago

It seems I have the same issue.

2022-10-03 21:19:13.400523+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: 👤 Identifying App User ID 2022-10-03 21:19:13.416057+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ Debug logging enabled 2022-10-03 21:19:13.416353+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - INFO: ℹ️ StoreKit 2 support enabled 2022-10-03 21:19:13.416618+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ SDK Version - 4.14.0-SNAPSHOT 2022-10-03 21:19:13.417574+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ Bundle ID - com.revenuecat.sampleapp 2022-10-03 21:19:13.417884+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: 👤 No initial App User ID 2022-10-03 21:19:13.427422+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ Delegate set 2022-10-03 21:19:14.532487+0200 Magic Weather SwiftUI[32501:8403926] [Default] Error enumerating unfinished transactions for first transaction listener: Error Domain=ASDErrorDomain Code=509 "No active account" UserInfo={client-environment-type=Sandbox, storefront-country-code=USA, NSLocalizedDescription=No active account} 2022-10-03 21:19:14.593045+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Started 2022-10-03 21:19:14.594102+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ No cached Offerings, fetching from network 2022-10-03 21:19:14.595054+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3Aed6d8027302a460692a673794befb67c 2022-10-03 21:19:14.596341+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: ℹ️ Network operation 'GetOfferingsOperation' found with the same cache key '$RCAnonymousID:...'. Skipping request. 2022-10-03 21:19:14.602605+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ applicationDidBecomeActive 2022-10-03 21:19:14.609916+0200 Magic Weather SwiftUI[32501:8403940] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.610442+0200 Magic Weather SwiftUI[32501:8403940] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.611379+0200 Magic Weather SwiftUI[32501:8403824] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.611513+0200 Magic Weather SwiftUI[32501:8403824] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.612096+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ CustomerInfo cache is stale, updating from network in foreground. 2022-10-03 21:19:14.612690+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ Network operation 'GetCustomerInfoOperation' found with the same cache key '$RCAnonymousID:...'. Skipping request. 2022-10-03 21:19:14.613358+0200 Magic Weather SwiftUI[32501:8403824] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.613534+0200 Magic Weather SwiftUI[32501:8403824] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:14.613970+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - DEBUG: ℹ️ Offerings cache is stale, updating caches 2022-10-03 21:19:14.614249+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ Network operation 'GetOfferingsOperation' found with the same cache key '$RCAnonymousID:...'. Skipping request. 2022-10-03 21:19:14.626472+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:ed6d8027302a460692a673794befb67c 2022-10-03 21:19:16.218144+0200 Magic Weather SwiftUI[32501:8403940] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.218295+0200 Magic Weather SwiftUI[32501:8403940] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.222847+0200 Magic Weather SwiftUI[32501:8403940] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.222952+0200 Magic Weather SwiftUI[32501:8403940] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.741938+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:ed6d8027302a460692a673794befb67c 304 2022-10-03 21:19:16.758562+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ Sending latest CustomerInfo to delegate. 2022-10-03 21:19:16.758968+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: 😻 CustomerInfo updated from network. 2022-10-03 21:19:16.760980+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: 😻 CustomerInfo updated from network. 2022-10-03 21:19:16.761305+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ GetCustomerInfoOperation: Finished 2022-10-03 21:19:16.761856+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Started 2022-10-03 21:19:16.762654+0200 Magic Weather SwiftUI[32501:8403940] [Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3Aed6d8027302a460692a673794befb67c, 0 requests left in the queue 2022-10-03 21:19:16.763507+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: ℹ️ There are no requests currently running, starting request GET subscribers/$RCAnonymousID%3Aed6d8027302a460692a673794befb67c/offerings 2022-10-03 21:19:16.764161+0200 Magic Weather SwiftUI[32501:8403926] [db] _LSSchemaConfigureForStore failed with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.764264+0200 Magic Weather SwiftUI[32501:8403926] [db] Failed to initialize client context with error Error Domain=NSOSStatusErrorDomain Code=-10817 "(null)" UserInfo={_LSFunction=_LSSchemaConfigureForStore, ExpectedSimulatorHash={length = 32, bytes = 0xed662242 5fb7c0a8 1bf3f783 33b5c275 ... 5cef5e61 5d97a96c }, _LSLine=478, WrongSimulatorHash={length = 32, bytes = 0x3190f8e7 217931fc b7f7be3d 298bbb9a ... 8472784b 30a84b1d }} 2022-10-03 21:19:16.765145+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: ℹ️ API request started: GET /v1/subscribers/$RCAnonymousID:ed6d8027302a460692a673794befb67c/offerings 2022-10-03 21:19:16.934353+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ API request completed: GET /v1/subscribers/$RCAnonymousID:ed6d8027302a460692a673794befb67c/offerings 304 2022-10-03 21:19:16.950622+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ No existing products cached, starting store products request for: ["SubYearPrem", "prem_02", "SubMontlyPrem", "Sub6MonthPrem"] 2022-10-03 21:19:16.952290+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ Found an existing request for products: ["Sub6MonthPrem", "SubYearPrem", "prem_02", "SubMontlyPrem"], appending to completion 2022-10-03 21:19:16.952511+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ Found an existing request for products: ["prem_02", "Sub6MonthPrem", "SubYearPrem", "SubMontlyPrem"], appending to completion 2022-10-03 21:19:16.952678+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ GetOfferingsOperation: Finished 2022-10-03 21:19:16.952844+0200 Magic Weather SwiftUI[32501:8403935] [Purchases] - DEBUG: ℹ️ Serial request done: GET subscribers/$RCAnonymousID%3Aed6d8027302a460692a673794befb67c/offerings, 0 requests left in the queue 2022-10-03 21:19:17.846047+0200 Magic Weather SwiftUI[32501:8403926] [Default] [StoreKit] Failed to get products through appstored in simulator, will try using appstoreagent on host mac: Error Domain=ASDErrorDomain Code=507 "Error decoding response" UserInfo={storefront-country-code=USA, NSLocalizedDescription=Error decoding response, client-environment-type=Sandbox, NSLocalizedFailureReason=Could not decode media products response} 2022-10-03 21:19:19.485157+0200 Magic Weather SwiftUI[32501:8403935] [Default] [StoreKit] Did not receive any products or error for products request. 2022-10-03 21:19:19.485816+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: 😻 Store products request request received response 2022-10-03 21:19:19.486256+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - DEBUG: ℹ️ Store products request finished 2022-10-03 21:19:19.492900+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - ERROR: 🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.) 2022-10-03 21:19:19.493279+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - ERROR: 🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.) 2022-10-03 21:19:19.493540+0200 Magic Weather SwiftUI[32501:8403926] [Purchases] - ERROR: 🍎‼️ Error fetching offerings - The operation couldn’t be completed. (RevenueCat.OfferingsManager.Error error 1.) 2022-10-03 21:19:19.494349+0200 Magic Weather SwiftUI[32501:8403824] [Purchases] - ERROR: 😿‼️ There is an issue with your configuration. Check the underlying error for more details. There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used). More information: https://rev.cat/why-are-offerings-empty Error fetching offerings: Error Domain=RevenueCat.ErrorCode Code=23 "There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used). More information: https://rev.cat/why-are-offerings-empty" UserInfo={readable_error_code=CONFIGURATION_ERROR, source_function=handleOfferingsBackendResult(with:completion:), source_file=RevenueCat/OfferingsManager.swift:125, NSLocalizedDescription=There's a problem with your configuration. None of the products registered in the RevenueCat dashboard could be fetched from App Store Connect (or the StoreKit Configuration file if one is being used). More information: https://rev.cat/why-are-offerings-empty}

NachoSoto commented 2 years ago

Looks like there is an underlying StoreKit error:

[StoreKit] Failed to get products through appstored in simulator, will try using appstoreagent on host mac: Error Domain=ASDErrorDomain Code=507 "Error decoding response" UserInfo={storefront-country-code=USA, NSLocalizedDescription=Error decoding response, client-environment-type=Sandbox, NSLocalizedFailureReason=Could not decode media products response}

I recommend trying to reproduce this without RevenueCat using StoreKit alone. You'll see the same error when fetching products, then I'd recommend filing a Radar with a sample project.

codykerns commented 2 years ago

Going to close this out, feel free to follow up with any more info.

github-actions[bot] commented 2 years ago

This issue has been automatically locked due to no recent activity after it was closed. Please open a new issue for related reports.