Solved

Upgraded to Xcode 13 RC, and latest RevenueCat package, and now Purchases won't work with watchOS.

  • 17 September 2021
  • 2 replies
  • 1553 views

Badge +3

I have an independent watch app on the store as part of a family of apps. The watch app is part of a single project with the iOS app. After I upgraded Xcode, my app will no longer recognize the Purchases(now RevenueCat) package. I am using a single class that manages the purchases. If I have it as part of the watch extension it throws errors. If I only target the iOS app, the errors go away. The errors all essentially amount to:

'PurchaserInfo' is not a member type of class 'RevenueCat.Purchases'

I am also showing an error of

Watch Extension.build/Objects-normal/arm64_32/Settings.dia:1:1: warning: Could not read serialized diagnostics file: error("Invalid diagnostics signature") (in target 'Watch Extension'…

Steps I have done:

  1. Make sure that the package is linked to the extension
  2. cleared the derived data, cleaned the project and restarted.

I can find no setting that seems to be a problem. Any help would be appreciated.

icon

Best answer by sharif 21 September 2021, 00:46

View original

2 replies

Userlevel 5
Badge +9

This question received an answer on StackOverflow:

This is one of the changes in purchases-ios version 4.0.0. The type Purchases.PurchaserInfo has been updated, it's now just PurchaserInfo (you can also refer to it as RevenueCat.PurchaserInfo).

The update is documented in the following link:

https://github.com/RevenueCat/purchases-ios/blob/4.0.0-beta.1/docs/V4_API_Updates.md#type-changes-for-swift

There are more changes along the same lines, like Purchases.Offerings -> OfferingsPurchases.package -> package.

Updating those should help with the migration.

If you're not ready to migrate yet, you can also stick with version 3.12.4 until you're ready.

Badge +3

Sharif,

Thanks. Yes it did. I asked the question on SO as well. I should have cross posted the answer.

Reply