SKHelper
is a new (September, 2024), lightweight Swift package that enables developers to easily add in-app purchase and subscription functionaility to their
SwiftUI-based apps.
Designed to be an easier-to-use refactoring of my StoreHelper package, it makes use of Apple's StoreKit Views to provide a standard and easily customizable UI.
- Note that
SKHelper
requires Xcode 16, iOS 17+ and macOS 14.6+ - Support for consumable transactions requires iOS 18+ and macOS 15+.
Check out the Quick Start Tutorial to get a fast overview of how things work.
- SKHelper Documentation Landing Page -
SKHelper
documentation landing page - SKHelper Quick Start -
SKHelper
quick-start guide - SKHelper In-Depth Guide -
SKHelper
andStoreKit2
in-depth guide - SKHelper Demo Project - Example Xcode
SKHelper
project
- 28 Oct, 2024
- Removed
SubscriptionStatusChangeClosure
fromSKHelper
initializer. Functionality now provided byonSubscriptionChange(onChange:)
view modifier - Added new
onTransaction(update:)
view modifier to enable transaction updates notifications
- Removed
- 6 Oct, 2024
- Fixed logging bug with release build; added
onSubscriptionChange(onChange:)
view modifier
- Fixed logging bug with release build; added
- 27 Sep, 2024
- Improved support for consumables
- 23 Sep, 2024
- Added support for consumable products. Note that supporting consumable transactions requires iOS18+ and macOS15+
- 20 Sep, 2024
- DocC documentation complete, including Quick Start tutorial (detailed Guide currently incomplete)
- 5 Sep, 2024
SKHelper
is now "feature complete" (apart from support for consumables)
- 5 Aug, 2024
- First proof-of-concept public release of
SKHelper
on GitHub
- First proof-of-concept public release of
SKHelper
is a Swift Package Manager (SPM) package that enables developers using Xcode 16 to easily add in-app purchase
support to iOS 17+ and macOS 14.6+ SwiftUI apps.
SKHelper
provides the following features:
- Multi-platform (iOS, macOS) SwiftUI support for purchasing Consumable (not yet implemented), Non-consumable and Subscription products
- Makes use of Apple's StoreKit Views to provide a standard and easily customizable UI
- Designed to be lightweight, simple and an easier-to-use refactoring of the
StoreHelper
package - Detailed documentation and an example project
- Supports transaction validation, pending ("ask to buy") transactions, cancelled and failed transactions
- Supports customer refunds and management of subscriptions (not yet implemented)
- Provides detailed transaction information and history for non-consumables and subscriptions (not yet implemented)
- Support for direct App Store purchases of promoted in-app purchases via Purchase Intents
- Supports Xcode 16's "complete" Strict Concurrency Checking
MIT license, copyright (c) 2024 Russell Archer. This software is provided "as-is" without warranty and may be freely used, copied, modified and redistributed, including as part of commercial software.
See License for details.
SKHelper
uses the newest features of Apple's StoreKit2
and which requires iOS 17+, macOS 14.6+ and Xcode 16.
Jump to the SKHelper Quick Start guide.