UnlockPremium

License Issues Pull Requests Code Size

Installation

iOS

Add https://github.com/GroupeMINASTE/UnlockPremium.git to your Swift Package configuration (or using the Xcode menu: File > Swift Packages > Add Package Dependency)

Don’t forget to add the In-App Purchase capability to your app (in Signing & Capabilities). This should automatically add the StoreKit framework to your app as well.

Android

Add the following to your build.gradle file:

repositories {
    mavenCentral()
}

dependencies {
    implementation 'me.nathanfallet.unlockpremium:unlockpremium:1.0.0'
}

Usage

iOS

Setup a configuration for the unlock view:

import UnlockPremium

extension UnlockPremiumConfig {

    static func config() -> UnlockPremiumConfig {
        return UnlockPremiumConfig(
            arguments: [
                PremiumArgument(
                    title: "A feature name",
                    description: "A feature description",
                    icon: "app.fill"
                ),
                // ...
            ],
            productIdentifier: "myAppSKU.premiumPurchase", // In-App Purchase `Product ID`
            completionHandler: {
                // Set your user as premium, for example:
                UserService.shared.setUserPremium(to: true)
            }
        )
    }

}

The completionHandler is the method called when the purchase completes successfully.

Then, show the view where you want:

.sheet(isPresented: $viewModel.showPremium, content: {
    UnlockPremiumView(configuration: .config(), isPresented: $viewModel.showPremium)
})

Android

Setup a configuration for the unlock view:

// TODO

The completionHandler is the method called when the purchase completes successfully.

Then, show the view where you want:

// TODO

GitHub

View Github