Skip to content

3.2.0

Compare
Choose a tag to compare
@x401om x401om released this 19 Nov 17:14
· 70 commits to master since this release

πŸŽ‰ Meet the Adapty iOS SDK 3.2.0!

  • Comprehensive Support for StoreKit 2: With the deprecation of the original API for In-App Purchases, we have redesigned our internal logic from the ground up to support the latest StoreKit 2 framework. Adapty also continues to support the original API for devices running iOS 13 and 14, where StoreKit 2 is unavailable.
  • Enhanced Swift Concurrency Integration: Adapty now leverages Swift concurrency in strict mode, offering developers a smoother and more efficient way to handle asynchronous tasks.
  • Swift 6 Ready: Adapty is fully compatible with Swift 6, embracing the latest features and improvements in the Swift ecosystem.
  • Seamless Backward Support: Existing projects are safe. Adapty continues to support Swift 5 and Xcode 15, ensuring uninterrupted compatibility for legacy setups.
  • Support for win-back offers. Read More.

⚠️ This version does not yet support VisionOS due to significant differences in how StoreKit 2 functions on this platform. We plan to restore support soon. In the meantime, please consider using Adapty SDK 3.1.0.

Breaking Changes:

  • AdaptyDelegate
    • AdaptyDelegate now requires Sendable conformance.
    • shouldAddStorePayment(for:defermentCompletion:) -> Bool of AdaptyDelegate was removed, please implement shouldAddStorePayment(for:) -> Bool instead.
  • Adapty
    • makePurchase now returns AdaptyPurchaseResult instead of AdaptyPurchasedInfo. Read more
    • getProductsIntroductoryOfferEligibility(products:) has been removed. The getPaywallProducts function now returns a product object with prepopulated offer information. Consider using the getPaywallProductsWithoutDeterminingOffer(paywall:) method if you need to load products without determining offer eligibilities. Read more
  • AdaptyUI
    • AdaptyUI.getViewConfiguration(forPaywall:) has been renamed to AdaptyUI.getPaywallConfiguration(forPaywall:) and now returns AdaptyUI.PaywallConfiguration instead of AdaptyUI.LocalizedViewConfiguration. Read more
  • AdaptyPaywallControllerDelegate. Read more
    • paywallController(_:didFinishPurchase:purchasedInfo:) has been changed to paywallController(_:didFinishPurchase:purchaseResult:).
    • paywallController(_:didSelectProduct:) now accepts AdaptyPaywallProductWithoutDeterminingOffer instead of AdaptyPaywallProduct.
    • paywallController(_:didCancelPurchase:) has been removed. Please use the purchaseResult from paywallController(_:didFinishPurchase:purchaseResult:) to detect purchase cancellations.

Full Changelog: 3.1.0...3.2.0